计算机进行运算时,都是采用补码进行运算的,因此我们现在就去了解一下原码、反码及补码吧。
原码
在计算机中,采用二进制定点表示法,即最高位为符号,“1”表示负,“0”表示正,其余为表示数值大小
例如
0 0111100 表示的是60
1 0111100 表示的是-60
反码
正数的反码与其原码是相同的
负数的反码是对其原码逐位去反,但符号位不变
补码
正数的补码与其原码相同
负数的补码是在其反码的末位+1
下面我们举个例子来进行了解(由于正数的反码与补码都与原码相同,因此在这里就去负数的例子)
给出-60的原码 10111100求出其反码及补码
原码为 1 0111100
按规定进行逐位取反,即-60的反码就为:1 1000011
补码:
1 1000011
+ 1
————————————————
1 1000100
-60的补码就为: 1 1000100
借此我们正好可以验证一下计算机运算是不是用补码进行运算的
60的补码为 0 0111100
-60的补码为1 1000100
将两者相加
0 0111100
+ 1 1000100
————————————————
10 0000000
因为最高位是第八位,超出第八位的数字,就要被砍掉。所以我们得出的结果就为0 0000000
本次的原码、补码及反码的学习到此结束,上述如有问题,请大家指点,谢谢。