补码的原理可以应用到任何进制的计算中,所以我想以十进制为例。
假设我们计算系统只能计算一位;
例如:1+1=2
然而2+9 = 11 = 1 (高位溢出,忽略)
定理:X + 10 = X (设x为正数)
例:
5 + (-2)
=(5 + (-2))+10
=5+(10-2)
=5+8
=13
=3
也就是说-2的补码等于10+(-2)=8
2的补码等于10+2=2
同理,在计算机中(8位):
1的补码等于
100000000
+ 00000001
00000001
-1的补码等于
100000000
- 00000001
11111111