使用六位 1 和 2 的补码表示我试图解决以下问题:
12 - 7
现在,我先取二进制的 12 和二进制的 7。
12 = 001100 - 6 bit
7 = 000111 - 6 bit
然后,我会翻转二进制补码的位并加一个吗?
12 = 110011 ones complement
+ 1
-------
001101
7 = 111000 ones complement
+ 1
---------
111001
然后,将这两个补码加在一起
001101
+111001
-------
1000110 = overflow? discard the last digit? If so I get 5
现在,如果我有一个像
-15 + 2
如果它是零,我会在 MSB 上添加一个符号幅度吗?
喜欢:
-15 = 001111 6 bit
在翻转位之前,我会在最后添加一个 1 吗?
= 101111