二进制与十进制的转换方法如下,分为整数和小数部分分别说明:
一、整数部分转换
十进制转二进制 - 除2取余法:
将十进制数不断除以2,记录余数,余数从下往上倒序排列。例如:
37 ÷ 2 = 18 余 1 → 1
18 ÷ 2 = 9 余 0 → 0
9 ÷ 2 = 4 余 1 → 1
4 ÷ 2 = 2 余 0 → 0
2 ÷ 2 = 1 余 0 → 0
1 ÷ 2 = 0 余 1 → 1
结果为: 100101(二进制)
- 按权展开法:将二进制数按位乘以2的幂次方(从右到左依次为2⁰、2¹、2²等),求和。例如:
1101₂ = 1×2³ + 1×2² + 0×2¹ + 1×2⁰ = 8 + 4 + 0 + 1 = 13(十进制)
二进制转十进制 - 按权展开法:
将二进制数按位乘以2的幂次方(从右到左依次为2⁰、2¹、2²等),求和。例如:
1010₂ = 1×2³ + 0×2² + 1×2¹ + 0×2⁰ = 8 + 0 + 2 + 0 = 10(十进制)
二、小数部分转换
十进制转二进制
- 乘2取整法: 将十进制小数不断乘以2,取整数部分,整数部分顺序排列。例如: 0.75 × 2 = 1.5 → 取1 0.5 × 2 = 1.0 → 取1 结果为: 0.11
二进制转十进制 - 乘2取整法:
将二进制小数部分按位乘以2的负幂次方(从左到右依次为2⁻¹、2⁻²等),求和。例如:
0.11₂ = 1×2⁻¹ + 1×2⁻² = 0.5 + 0.25 = 0.75(十进制)
三、注意事项
IP地址转换:二进制IP地址通常按8位分段,每段转换为十进制后用点连接。例如:
11000000.10101000.00000001.00000001 → 192.168.1.1
负数处理:十进制负数需先取反加1(二进制补码),再转换。例如:
-5的二进制为11111111111111111111111111110101(32位)
以上方法适用于整数、小数及特定场景(如IP地址),可根据需求选择转换方式。