如何将十进制的浮点数 转换二进制的浮点数,分为两部分:
- 1. 先将整数部分转换为二进制,
- 2. 将小数部分转换为二进制, 然后将整数部分与小数部分相加。
以 20.5 转换为例,20转换后变为10100;0.5 要转换二进制,需要乘2, 乘完之后 取整数部分,然后用乘的结果减去整数部分, 然后接着乘2, 直至最后没有小数或者小数出现循环, 即乘完.如果等于0, 就取前面不为0的部分.
0.5 * 2 = 1.0 (取1)
0 * 2 = 0 (0)
所以, 转换后 0.5 = 0.1,
所以 20.5 转换二进制后, 20.5 = 10100.1(二进制)
--------------------------------
再看一个浮点数 20.3
20 = 10100 (二进制)
0.3 * 2= 0.6 (0)
0.6 * 2 = 1.2 (1)
0.2 * 2= 0.4 (0)
0.4 * 2 = 0.8 (0)
0.8 *2 = 1.6 (1)
计算到这里, 将再出现0.6,进入循环了,所以,结果
0.3 = 0.010011001...1001
所以20.3 = 10100.010011001...1001 (二进制).
原文地址:https://www.cnblogs.com/lin-jing/p/8370133.html
时间: 2024-09-30 16:22:26