二进制与十进制转换是计算机科学和数学中的基础操作,以下是两种转换方法的详细说明:
一、二进制转十进制
整数部分转换 - 将二进制数按权展开,从右至左依次用每一位二进制数乘以2的幂次方(2⁰, 2¹, 2², …),然后将结果相加。 - 例如:二进制数1101转换为十进制:
$$1 times 2^3 + 1 times 2^2 + 0 times 2^1 + 1 times 2^0 = 8 + 4 + 0 + 1 = 13$$
小数部分转换
- 将二进制小数部分乘以2,取整数部分,依次向左重复,直到小数部分为0。 - 例如:二进制小数0.101转换为十进制:
$$0.101 times 2 = 0.202 quad text{取整0}$$
$$0.202 times 2 = 0.404 quad text{取整0}$$
$$0.404 times 2 = 0.808 quad text{取整0}$$
$$0.808 times 2 = 1.616 quad text{取整1}$$
结果为0.001(二进制)
二、十进制转二进制
整数部分转换
- 用2除十进制数,记录余数,将余数从下到上倒序排列,即为二进制数。 - 例如:十进制数101转换为二进制:
$$101 div 2 = 50 quad text{余1}$$
$$50 div 2 = 25 quad text{余0}$$
$$25 div 2 = 12 quad text{余1}$$
$$12 div 2 = 6 quad text{余0}$$
$$6 div 2 = 3 quad text{余0}$$
$$3 div 2 = 1 quad text{余1}$$
$$1 div 2 = 0 quad text{余0}$$
倒序排列得1001011
小数部分转换
- 用2乘十进制小数部分,取整数部分,依次向左重复,直到小数部分为0。 - 例如:十进制小数0.625转换为二进制:
$$0.625 times 2 = 1.25 quad text{取整1}$$
$$0.25 times 2 = 0.5 quad text{取整0}$$
$$0.5 times 2 = 1 quad text{取整1}$$
结果为0.101(二进制)
三、注意事项
负数处理: 二进制转十进制时,若原数为负数,需在结果前加符号位(如-1)。十进制转二进制时,负数需使用补码表示。 应用场景
通过以上方法,可灵活实现二进制与十进制之间的转换。