负数的二进制表示通常采用 二进制补码形式。以下是-87转换为二进制补码的详细步骤:
一、转换为绝对值的二进制
通过连续除以2取余数,从下到上排列余数:
```
87 ÷ 2 = 43 余 1
43 ÷ 2 = 21 余 1
21 ÷ 2 = 10 余 1
10 ÷ 2 = 5 余 0
5 ÷ 2 = 2 余 1
2 ÷ 2 = 1 余 0
1 ÷ 2 = 0 余 1
```
整数部分从下到上排列余数得到: 1010111
因此,87的二进制表示为 01010111(不足8位时前面补零)。
二、计算补码
取反操作
将二进制数 1010111的每一位取反(0变1,1变0):
```
1010111 → 0101000
```
加1操作
对取反后的结果加1:
```
0101000 + 1 = 0101001
```
由于加1后未产生进位,最终结果为 0101001。
三、结果说明
87的补码表示: 0101001
-87的补码表示:10101001
(最高位为符号位,0表示正数,1表示负数)
注意:
若使用8位表示,-87的补码为 10101001;若使用32位表示,需在前面补24个零,即 10000000000000000000000000101001。- 补码系统可统一正负数运算,计算机内部普遍采用此方法。