2进制整数的减法

1. 在计算机中,一般用最高位来表示符号,0表示正号,1表示负号,其他各位表示数值,下面是8位2进制表示的10进制整数值
8位2进制 整数值
0111 1111 = 127
0000 0011 = 3
0000 0010 = 2
0000 0001 = 1
0000 0000 = 0
1000 0000 = -0
1000 0001 = -1
1000 0010 = -2
1000 0011 = -3
1111 1111 = -127
8位2进制表示的范围是 127~-127

2. 根据以上的数值进行1-1的运算
0000 0001 + 1000 0001 = 1000 0010 = -2
显然计算结果不是我们想要的,于是引入了补码的概念

3. 在计算机中用正数的补码表示负数
补码 = 各位数字取反 最后+1
0111 1111 = 127
0000 0010 = 2
0000 0001 = 1
0000 0000 = 0
1111 1111 = -1
1111 1110 = -2
1000 0001 = -127
1000 0000 = -128
8位2进制表示的范围是 127~-128

4. 根据以上的数值进行1-1的运算
0000 0001 + 1111 1111 = 1 0000 0000 = 0
在这里1 0000 0000 = 0,是因为我们只有8位2进制,所以溢出的高位被舍去了

5.0的补码还是0

posted on 2013-09-26 20:20  宁静*勤奋  阅读(248)  评论(0)    收藏  举报