问:补码中谁跟谁互补?
补和模的概念息息相关,首先解释什么是互补。计算机中的两个数互补的意思:对于模M,a与(a + n x M)互补,例如对于M=12,1和13互补,2和14互补。而非1和11互补,2和10互补。(计算机跟几何中补角的概念不一样)
给出16位,可以表示从0000到ffff,如下表:
二进制 | 无符号 | 有符号 |
0000 | 0 | 0 |
0001 | 1 | +1 |
...... | ... | ... |
8000 | 32768 | -32768 |
8001 | 32769 | -32767 |
...... | ... | ... |
f f f e | 65534 | -2 |
f f f f | 65535 | -1 |
补码的求法:
正数的补码是其本身,负数的补码是除符号位外按位取反加1。这个求法中没有体现“补”的概念。