为什么正数的补码和原码一样

如题所述

在计算机系统中,数值,一律采用补码表示和存储。


原码反码,在计算机中,都不存在。

它们,也是没有任何用处的。

相同、或不相同,都没有任何意义。

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

补码,其实就是一个“代替负数”的正数。


使用了补码之后,在计算机中,就没有负数了。


顺便,也就消除了减法运算。


所以,计算机只需要一个加法器,就可以走遍天下了。


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


补码(即一个正数),怎么就能【代替负数】呢?


理论基础在于:计数系统的周期性。


比如,2 位 10 进制数(0~99),计数周期就是 10^2 = 100。


那么: 25 - 1 = 24


    25 + 99 = (一百) 24


只要你:舍弃进位,仅保留 2 位数,99 就能代替-1。


同理,98 也能代替-2。


。。。


这些正数,就称为“负数的补数”。


变换公式: 负数的补数 = 负数 + 周期。


另外还有:


  时针倒拨 3 小时、正拨 9 小时,是等效的,周期是 12。


  -π/2、+3π/2,正负两种角度,也等效,周期是 2π。


变换公式,都是一样的。


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


计算机中,8 位 2 进制数,周期就是 2^8 = 256。


-1 的补码,就是:-1 + 256 = 255 = 1111 1111(二进制)。


-2 的补码,就是:254 = 1111 1110(二进制)。


。。。


求补码,不必经过“原码反码取反加一符号位不变”。


数学不好的老外,才需要弄哪些骚操作!


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


只有负数,才需要变换成补码(正数)。


正数,不需要变换,也不允许变换,必须直接去相加运算。


所以,正数,它就没有补码。


有人说:正数的。。。都相同。


这就是被老外带到沟里去了。


原码反码,都是不存在的,哪还有什么相等!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-04-02
这是规定。
因为补马用于负数,让 减一个数 可以 简单地 用 硬件-加法器 实现:减那个数,用加它的补马即可。
为完善理论,规定: 正数,的 反马,补马和原马 一样。
(上面写的马字是石字旁的)本回答被网友采纳
相似回答