我试图用二进制形式的二进制补码来解决以下问题 .
7.5 - 6.75
7.5 - 6.75可以改写为(7.5)( - 6.75)
取二进制十进制数
7.5 = 111.1
6.75 = 110.11
-6.75 = 001.00
现在我应该在“ . ”(句号)的左侧或右侧添加1?
要使用2的补码执行带符号数(M - N)的减法,请执行以下操作:
M和N的位数应相同 .
获得N的2的补码(包括符号位) .
将N的2的补码添加到M(包括符号位) .
如果总和产生最终结转 . 丢弃最后一次携带 . 在丢弃结束进位之后,最左边的位是符号位 .
如果符号位为0,则结果为正,
如果符号位为1,则结果为负 .
如果求和不产生最终进位,则最左边的位是符号位 .
产生2的赞美:
The 2’s complement of the subtrahend 10001 = 01111 1 1 1 1 carry bits 1 0 0 1 1 + 0 1 1 1 1 1 0 0 0 1 0 Since the summation produces an end carry the result is positive. Discard the end carry; the result is a positive number.
1 回答
要使用2的补码执行带符号数(M - N)的减法,请执行以下操作:
M和N的位数应相同 .
获得N的2的补码(包括符号位) .
将N的2的补码添加到M(包括符号位) .
如果总和产生最终结转 . 丢弃最后一次携带 . 在丢弃结束进位之后,最左边的位是符号位 .
如果符号位为0,则结果为正,
如果符号位为1,则结果为负 .
如果求和不产生最终进位,则最左边的位是符号位 .
产生2的赞美: