整数的原码,反码和补码的表示??
1、一个正整数,当用原码、反码、补码表示时,符号位都固定为0,用二进制表示的数位值都相同,即三种表示方法完全一样
2、一个负整数,当用原码、反码、补码表示时,符号位都固定为1,用二进制表示的数位值都不相同,即三种表示方法完全一样。此时由原码表示法变成补码表示法的规则如下:
①原码符号位为1不变,整数的每一位二进制数位求反得到反码
②反码符号位为1不变,反码数值为最低位加1,得到补码
计算机中,只用补码表示正负数。
在计算机中,并不存在原码反码。
求补码,也有更简单的方法,也用不着原码反码。
所以,原码反码,都没有任何用处。
----
以八位码长,来说明计算机中的补码:
数字 0 的补码是:0000 0000。
数字 1 的补码是:0000 0001。
数字 2 的补码是:0000 0010。
。。。依次递增。。。
数字 127 的补码,就是:0111 1111。
负数,你就依次递减吧。
数字 0 的补码是:0000 0000。
数字-1 的补码是:0000 0000-1=1111 1111。(=255)
数字-2 的补码是:1111 1110。(=254)
。。。依次递减。。。
数字-128 的补码,就是:1000 0000。(=128)
----
由此可推出补码的定义:
零和正数的补码,就是该数字本身。
负数的补码,就是:256 + 该负数。
----
这就是:计算机中,正负数的存放格式。
其他说法如:原码反码符号位,都是人为瞎编的。
它们和计算机,没有任何关系。
在计算机中,整数,一律采用补码表示。
原码和反码,在计算机中,都是不用的。
没用的东西,你只能写在黑板上、纸面上,你怎么表示都行。
根本就不存在的东西,你想怎么表示就怎么表示。