您的位置:首页 > 其它

原码、反码、补码

2010-02-22 15:17 155 查看
正数:原码、反码、补码一样

[+7]原= 0 0000111 B

[+7]反= 0 0000111 B

[+7]补= 0 0000111 B

负数:原码就是原来的表示方法、反码是除符号位(最高位)外取反、补码=反码+1

[-7]原= 1 0000111 B

[-7]反= 1 1111000 B

[-7]补= 1 1111001 B

当做加法时,只需将原码相加即可,例如7+4=11

[+7]原= 0 0000111 B

[+4]原= 0 0000100 B

-----------------------------------

0 0001011 B(11)

当做减法时,例如7-4=3,可以看成加上负数7+(-4),但是这里直接用原码计算是错误的,如下所示:

[+7] 原= 0 0000111 B

[-4] 原= 1 0000100 B

-----------------------------------

1 0001011 B(-11)

由于4-4=0在计算机里可以表示为

[+4] 原= 1 0000100 B

[-4] 补= 1 1111100 B

-----------------------------------

1 0 0000000 B(0) —— 这里1是溢出位

根据上述结论,如果将-4转换成补码,则可以使运算成立。

[+7] 原= 0 0000111 B

[-4] 补= 1 1111100 B

-----------------------------------

1 0 0000011 B(3)

这里可以联想为:7原+(-4)补=3原+4原+(-4)补=3原+0原=3原
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: