I know they can for addition and subtraction, but I'm not quite sure if they can for multiplication.
As far as hardware goes, unsigned multiplication and signed multiplication are exactly the same (ignoring flags). When you multiply
11111111, the result is
00000001, regardless of whether the inputs are considered to mean -1 or 255.
That said, I don't know if the two operations would have a different effect on the carry and overflow flags, and how the difference is dealt with if so.
Can unsigned and signed (two's complement) multiplication be performed on the same hardware?
N bit width.
The trick is that the hardware can do a signed
N+1 wide multiplication, thus re-using most of the hardware when doing unsigned*unsigned, signed*signed or mixed signed multiplication.
N+1 operands can handle the entire range of
The final 2's complement
2*N + 1 product can simply save the desired bits into a