步骤1:将两个整数的位数扩展到原来的两倍,可以进行这个操作,但不一定总是必要的。sign extend
for 4-bit --> 1111, you would extend as 1111 1111
for 4-bit --> 0111,you would extend as 0000 0111
第二步:进行基本乘法
第三步:从结果的最低有效部分中取出正确数量的结果位。
例如:在乘法之后,您得到像 0010011110
这样的东西,请取最后8位,即 10011110
让我用您提供的示例进行说明:-1 X -7
以4位表达式表示
1111 1111 -1
x 1111 1001 x -7
---------------- ------
11111111 7
00000000
00000000
11111111
11111111
11111111
11111111
11111111
----------------
1 00000000111 ---> 7 (notice the Most significant bit is zer``o)
-------- (last 8-bits needed)
你可以在这里获得更多详细信息;
对于除法:将数值转换为正数,计算后再调整符号。我会把这部分作为练习留给你,但你可以参考这个页面。
000111
Goes to the complement + 1
111000
+ 1
=111001
并为22个数字做准备
010110
Goes to the complement + 1
101001
+ 1
=101010
然后,您可以像处理其他数字一样将它们加在一起。
看起来有人已经解释了乘法部分,所以我不再重复。