
起步向前走为您分享以下优质知识
带小数的二进制计算主要分为整数部分和小数部分的转换,具体方法如下:
一、带小数的二进制转换为十进制
整数部分转换
按照二进制转十进制的方法,将整数部分每位乘以2的对应幂次后求和。例如:
$$1011.0111 = (1 times 2^3) + (0 times 2^2) + (1 times 2^1) + (1 times 2^0) + (0 times 2^{-1}) + (1 times 2^{-2}) + (1 times 2^{-3}) + (1 times 2^{-4}) = 11.4375$$
小数部分转换
将小数部分乘以2,取整数部分,重复此过程直至小数部分为0。例如:
$$0.4375 times 2 = 0.875 quad text{取0}$$
$$0.875 times 2 = 1.75 quad text{取1}$$
$$0.75 times 2 = 1.5 quad text{取1}$$
$$0.5 times 2 = 1 quad text{取1}$$
结果为:
$$0.4375_{10} = 0.0111_2$$
二、带小数的十进制转换为二进制
整数部分转换
采用“除2取余”法,将整数部分不断除以2,记录余数并逆序排列。例如:
$$235 div 2 = 117 quad text{余1}$$
$$117 div 2 = 58 quad text{余1}$$
$$58 div 2 = 29 quad text{余0}$$
$$29 div 2 = 14 quad text{余1}$$
$$14 div 2 = 7 quad text{余0}$$
$$7 div 2 = 3 quad text{余1}$$
$$3 div 2 = 1 quad text{余1}$$
$$1 div 2 = 0 quad text{余1}$$
结果为:
$$235_{10} = 11010111_2$$
小数部分转换
采用“乘2取整”法,将小数部分乘以2,取整数部分并顺序排列,直至小数部分为0或达到精度要求。例如:
$$0.725 times 2 = 1.45 quad text{取1}$$
$$0.45 times 2 = 0.9 quad text{取0}$$
$$0.9 times 2 = 1.8 quad text{取1}$$
$$0.8 times 2 = 1.6 quad text{取1}$$
$$0.6 times 2 = 1.2 quad text{取1}$$
$$0.2 times 2 = 0.4 quad text{取0}$$
$$0.4 times 2 = 0.8 quad text{取0}$$
结果为:
$$0.725_{10} = 0.101101_2$$
三、注意事项
无限循环小数
若小数部分转换为二进制后出现无限循环(如0.1₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂₂