0的反码和原码被表示了两次,而0的补码只表示了一次。
+0 原码00000 反码00000 补码00000 -0原码10000 反码11111 补码00000
当为纯整数的时候,补码比原码能多表示一个最负负的数-2^n (如:10000表示-16)
纯小数时,补码可以多表示一个-1(-1的补码为1.0000)而在原码中-1是不可以被表示出来的。
所以补码可以比原码,反码多表示一个数。。。。。
符号位,在原码取反的时候符号位不变
另外补码反码的符号位可以和数值位一起参与运算..
应该就这些了。。
自然界,只有一个零,而原码和反码中,却都有两个零,显然是不合理的。
补码,就没有这个毛病,这才是正确的表示方法。
所以,计算机中,只是使用补码,根本就不用原码反码。
既然,它们都不存在,还学它们干嘛呢?
讨论来讨论去,都是毫无意义的。
零! 天下只有一个零。
零,既不是正数,也不是负数。
计算机大佬,硬给零,加上一个符号位!
于是,就编造出来两个零的代码(+0、-0)。
他们,这就是想要上天哪!
如果他们有小学毕业的水平,就不会这么做。
多弄一个零,当然就少表示一个数值。
这种乱码,计算机是无法使用的。
所以,计算机,只用补码表示数值。
反码,源码 0被表示了两次
去 看看唐朔飞的书吧 里面讲得很详细 不要急 组成是有些麻烦的