为什么补码中0只有一种表示方法?
因为补码的正零与负零表示方法相同。
补码一共有三个特性,除了补码的正零与负零表示方法相同外,一个负整数(或原码)与其补数(或补码)相加,和为模为补码的第二个特性,第三个特性是则是,对一个整数的补码再求补码,等于该整数自身。
小数的补码则是一种很简单的方式,符号位保持1不变,数值位从右边数第一个1及其右边的0保持不变,左边按位取反即可。
扩展资料:
补码的求法:
正数
正整数的补码是其二进制表示,与原码相同。
【例1】+9的补码是00001001。(备注:这个+9的补码是用8位2进制来表示的,补码表示方式很多,还有16位二进制补码表示形式,以及32位二进制补码表示形式,64位进制补码表示形式等。每一种补码表示形式都只能表示有限的数字。)
负数
求负整数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1。
同一个数字在不同的补码表示形式中是不同的。比如-15的补码,在8位二进制中是11110001,然而在16位二进制补码表示中,就是1111111111110001。以下都使用8位2进制来表示。
【例2】求-5的补码。
-5对应正数5(00000101)→所有位取反(11111010)→加1(11111011)
所以-5的补码是11111011。
【例3】数0的补码表示是唯一的。
[+0]补=[+0]反=[+0]原=00000000
[ -0]补=11111111+1=00000000
参考资料:
为什么补码中0只有一种表示方法?
因为,天下只有一个零。
零,既不是正数,也不是负数,这是小学生都懂的常识。
但是计算机大佬,硬是给零,强加上一个符号位!
这就为原码和反码,都编造出来了两个零的代码:+0、-0。
他们这就是想要上天哪!
如果他们有小学毕业的水平,也不会这么做的。
在原码和反码中,都有两个零,因而,就少表示一个数值。
这两种代码,都属于乱码。
所以,计算机根本就不用这两种代码。