就是数值在计算机中的二进制表现形式
机器数在计算机中有符号,使用 最高位表示符号 , 使用0 表示正,使用 1 表示负
一个字节8个bit位表示
+5 = 0000 0101
-10 = 1000 1010
机器数所表示的真正的数值
如 : 1000 1010 = -10
原码就是符号位加上真值的绝对值
正数 : 正数的反码 = 原码 如: +3 = 0000 0011[原码] = 0000 0011 [反码]
负数 : 符号为不变 ,其余各位直接取反 , 1->0 0->1
计算机中数据以补码的形式,同样以补码的形式参与运算
正数 : 原码 = 反码 = 补码 如 : +3 0000 0011[原码] = 0000 0011[反码] = 0000 0011[补码]
负数 : 首先求的反码,在反码的基础上 + 1,[加到最低位上]
正数 : 不需要转
负数 : 求补码的补码
将负数的补码当做原码,然后求该原码的补码
计算规则 :符号位不变,其余各位直接取反,然后加1;
俩补码相加得0001 0111 = 23
-67-11 = -78 = -67+(-11) -67得原码为1100 0011 反码为1011 1100 补码为1011 1101 -11的原码为1000 1011 反码为1111 0100 补码为1111 0101俩补码相加得 1100 1110 == -78
-41-29 = -70 =-41+(-29) -41的原码为 1010 1001 反码 得1101 0110 补码得 1101 0111 -29的原码为1001 1101 反码为1110 0010 补码为1110 0011俩补码相加得 1100 0110 = -70