output[7:0]oanswer; wire[7:0]answer_unsigned,answer_signed; //unsignedoperation assignanswer_unsigned=ia*ib+{4'h0,ic}; //signedoperation assignanswer_signed={{4{ia[3]}},ia}*{{4{ib[3]}},ib}+{{4{ic[3]}},ic}; assignoanswer=(imode==0)?answer_unsigned:answer_signed; endmodule ...