将十进制数转换为二进制数可通过以下方法实现,分为整数和小数部分分别处理:
一、整数部分转换(除2取余法)
操作步骤 - 用2连续除以十进制整数,记录每次的余数(0或1);
- 当商为0时停止,将余数从低位到高位逆序排列。
示例
将171转换为二进制:
- 171 ÷ 2 = 85 余1
- 85 ÷ 2 = 42 余1
- 42 ÷ 2 = 21 余0
- 21 ÷ 2 = 10 余1
- 10 ÷ 2 = 5 余0
- 5 ÷ 2 = 2 余1
- 2 ÷ 2 = 1 余0
- 1 ÷ 2 = 0 余1
- 最终结果为 10101011。
二、小数部分转换(乘2取整法)
操作步骤
- 将十进制小数部分乘以2,取整数部分作为二进制小数位;
- 重复上述过程,直到小数部分为0或达到所需精度。
示例
将0.75转换为二进制:
- 0.75 × 2 = 1.50(取1)
- 0.50 × 2 = 1.00(取1)
- 最终结果为 0.11。
三、综合转换
整数+小数: 分别转换后组合,如13.625 → 1101.101
四、编程实现(Java示例)
使用`Integer.toBinaryString`方法可快速转换整数:
```java
int num = 10;
String binaryStr = Integer.toBinaryString(num); // 输出 "1010"
```
五、注意事项
二进制数通常以`0b`或`B`后缀表示(如`0b1010`或`10B`);
除2取余法适用于整数,乘2取整法适用于小数,两者需分开处理。