1、如何将浮点数转换成二进制呢?
简单概括起来,同样也是一句话:
整数部分依旧采用“除2取余,逆向取值”的方法;而小数部分则乘2取整,直到余下的小数为0或者满足精度要求为止,然后顺序取值(即最先得到的整数为最高位,最后得到的整数为最低位)。
比如:58.625
所以,最终结果就是:11 1010.101。
若采用科学计数法来表示的话,就是:
其中,指数2就如同十进制中的科学计数法中的指数10一样;10是2的二进制,101是5的二进制。
在IEEE-754标准中,浮点数的存储格式是这样的:
S是符号位,用来表示正负,0表示正,1表示负,只占1bit。
E是指数位,用来存储“浮点数表示成科学计数法形式时”的幂次。注意:E=常数 e,其中e就是2的幂次。
M是尾数,就是浮点数表示成科学计数法形式时小数点后面的数。
如果将上面的例子表示成这种形式的话,那就是: