因为计算机中只有加法没有减法.为了更加低成本的计算出结果,所以使用补码来存储数据.
下面我们看一个例子 这个例子也是我看的时候特别能帮助我理解的 清晰明了,例如 :
3 - 2; 这个减法运算对于计算机而言它的理解是 3 + (-2) = 1
使用原码计算.
3的原码 00000000 00000000 00000000 00000011
-2的原码 10000000 00000000 00000000 00000010
----------------------------------------------------
10000000 00000000 00000000 00000101 结果是1个负数明显是不对的
使用反码计算.
3 的反码: 00000000 00000000 00000000 00000011
-2的反码: 11111111 11111111 11111111 11111101
--------------------------------------------------
00000000 00000000 00000000 00000000 0
使用补码计算
3 的补码: 00000000 00000000 00000000 00000011
-2的补码: 11111111 11111111 11111111 11111110
-------------------------------------------------
00000000 00000000 00000000 00000001 1