带正负数的二进制转换需要根据数的类型(整数或小数)和表示范围(如8位、16位、32位等)采用不同的方法。以下是具体步骤和注意事项:
一、整数部分的转换
正整数转二进制 采用“除2取余,倒序排列”法。例如将42转换为二进制:
```
42 ÷ 2 得余数序列:1, 0, 1, 1, 0, 1, 1
倒序排列并补零(32位):00000000 00000000 00000000 00101011
```
负整数转二进制
采用“原码→反码→补码”法。 - 原码: 直接将正整数二进制取反(符号位为1); - 反码
- 补码:反码加1。 例如将-42转换为二进制:
```
原码:10101010
反码:11010101
补码:11010110
```
二、小数部分的转换
采用“乘2取整”法。- 将小数部分乘以2,取整数部分(0或1),再对小数部分重复操作,直到小数部分为0或达到所需精度。- 例如将0.125转换为二进制:
```
0.125 × 2 = 0.25 → 取整0
0.25 × 2 = 0.5 → 取整0
0.5 × 2 = 1.0 → 取整1
结果:0.001(二进制小数部分)
```
三、组合表示
定点数表示:整数部分用常规二进制表示,小数部分用上述方法转换,两者组合。例如-42.375表示为:
```
10101010.001101(32位)
```
补码表示:负数采用补码形式存储,正数与正整数相同。
四、注意事项
位数不足时补零:
计算机以固定位数(如8位、32位)存储,需在高位补零。例如5的二进制为00000101,-5的补码为11111011。2. 负数运算:计算机内部运算均以补码形式进行,需遵循“原码→反码→补码”的转换规则。
通过以上方法,可系统地将带正负的数转换为二进制形式。