原代码10000001
反代码11111110
补码11111111
移位码01111111
我有更多的内容~
补码相对于原代码和反代码可以表示多个数字,因为反代码和原代码中有两种表示“0”的方法,但补码只有一种。
对于小数,“多个数字”可以表示为-1。
//因为这个内容比较重要,所以会在专业点的教材中特别讲解。你应该好好读~~
原代码:1(符号位)0000001反代码:1(符号位不变,其他取反)1111110补码:(取反加1)11111111
原代码是把原来的数字转换成二进制,例如10的原代码是00001010,10的原代码是10为00001010,最高位0表示数字为正数(最高位为符号位)。原始代码-10为10001010,最高位1表示数字为负数,原始代码10为00001010。那么他的逆码和补码和原来的码是一样的,也就是00001010,因为正数的原码和逆补码是一样的——原来10的码是10001010,那么他的逆码是11110101,也就是符号位不变,其他位0变1,1变0。他的补码是基于反码,最低位加1,即11110110。好啊?
在定义0的原码、反码和补码时,要注意计算机在这里识别0,需要分为正0和负0,所以
(8位表示)原码:00000000,反码:00000000,补码:00000000
对于任何正数,原码、反码和补码都是完全相同的。因此,原始代码1的8个逆是00000001。