引言
计算机中有符号数有原码、真值和补码三种表示形式,计算机系统中的数值都是由补码表示。原码是真值的二进制表示,例如5对应的八位二进制表示为00000101,5 是我们真实世界中看到的真值,00000101真值对应原码。计算机中数值使用数值表示的好处有。
- 简化运算,将减法化成加法计算,并且可以直接将符号位进行运算。
- 原码和补码之间的转化简单,这也是为什么不使用反码的原因。
下面通过3个例子说明计算机中使用补码可以简化运算,3个例子依次是“正数+正数”,“正数-正数”,“负数+负数”,其它类型都可以转化成这三种,在计算中为了书写方便,使用8进制表示数值,正数补码是它本身。原码转化成补码为,负数补码需要各位取反加1(除最高位符号位不用取反);补码转化成原码,只需求补码的补码即可。
1.正数+正数
2.正数-正数
3.负数+负数
通过对三个例子的计算,可以感受到,无论哪种情况的计算,转化为反码后计算过程都一样,极大的方便了计算。
reference
[1] https://baike.baidu.com/item/%E8%A1%A5%E7%A0%81/6854613?fr=aladdin#reference-[3]-377340-wrap.