35次浏览

计算机为什么使用补码?

计算机可以做加法运算, 比如说,
1+1 二进制形式为,00000001+00000001, 即等于00000010。
1+2 二进制形式为,00000001+00000010, 即等于00000011。

也就是简单的数学加法运算,只不过要注意1+1等于0,然后进一位,0+1等于1,1+0等于1。
计算机减法确是不可行的,比如2-1,那我们只能看作2+(-1)。

二进制的负数表示方法就是最高位,也就是符号位,写成1即为负,如果是0即为正。

那么就是00000010 + 100000001 = -3,结果明显是不正确的,然后就要采用到补码,正数补码即为自身,负数补码除了符号位以外,其他数值全部反转,然后再将反转以后的数值最后一位加+1。

形式也就是两个二进制数后的补码加起来,00000010 + 11111111 = 000000001,即等于2-1=1了,这次就正确了。
总的来说,为了使计算机实现减法运算从而采用了负号,然后再将负数转为补码形式,就可以得到正确结果,这就是补码的作用。

发表评论

电子邮件地址不会被公开。 必填项已用*标注