/* 16bits Decrementar */ submod_class dec16 { input in<16>; output out<16>; instrin do; instr_arg do(in); } module dec16 { input in<16>; output out<16>; instrin do; instruct do par { any { ^in<0> : any { ^in<1> : any { ^in<2> : any { ^in<3> : any { ^in<4> : any { ^in<5> : any { ^in<6> : any { ^in<7> : any { ^in<8> : any { ^in<9> : any { ^in<10> : any { ^in<11> : any { ^in<12> : any { ^in<13> : any { ^in<14> : any { ^in<15> : out = 0xffff; else : out = 0x7fff; } else : out = in<15> || 0b011 || 0xfff; } else : out = in<15:14> || 0b01 || 0xfff; } else : out = in<15:13> || 0b0 || 0xfff; } else : out = in<15:12> || 0x7ff; } else : out = in<15:11> || 0b011 || 0xff; } else : out = in<15:10> || 0b01 || 0xff; } else : out = in<15:9> || 0b0 || 0xff; } else : out = in<15:8> || 0x7f; } else : out = in<15:7> || 0b011 || 0xf; } else : out = in<15:6> || 0b01 || 0xf; } else : out = in<15:5> || 0b0 || 0xf; } else : out = in<15:4> || 0x7; } else : out = in<15:3> || 0b011; } else : out = in<15:2> || 0b01; } else : out = in<15:1> || 0b0; } } }