关于程序员:计算机存储小数原理

43次阅读

共计 287 个字符,预计需要花费 1 分钟才能阅读完成。

计算机中小数转二进制的办法:

小数局部乘 2,失去乘积,将积的整数局部取出(0 或 1),再用余下的小数局部乘 2,又失去一个乘积,再将积的整数局部取出(0 或 1),循环解决,直到积中的小数为 0,或者达到所要求的精度进行。

小数局部 乘 2 后果 二进制位
0.63×21.261
0.26×20.520
0.52×21.040
0.04×20.080

始终计算直到超过了保留的位数,不能准确保留该小数

小数局部 乘 2 后果 二进制位
0.75×21.51
0.5×211
0

0.75 的二进制为 0.11

所以有的小数在计算机中存在失真,或者有的小数在存储到数据库后,再读取进去的值是一个小数位十分多的和原来数字近似的小数。

正文完
 0