计算机之所以会出现运算错误,是因为“有一些十进制数的小数无法转换成二进制数”。图3-2中,小数点后4位用二进制数表示时的数值范围为0.0000~0.1111。因此,这里只能表示0.5、0.25、0.125、0.0625这四个二进制数小数点后面的位权组合而成(相加总和)的小数。将这些数值组合后能够表示的数值,即为表3-1中所示的无序的十进制数。
用代码清单3-1的程序无法得到正确结果。因为无法正确表示的数值,最后变成了近似值。计算机这个功能有限的机器设备,无法处理无限循环的小数,因此在遇到循环小数时,计算机就会根据变量数据类型所对应的长度将数值从中间截断或者四舍五入。计算机运算出错的原因也是同样的道理。
标签:运算,计算机,二进制,数值,出错,3.3,小数 From: https://www.cnblogs.com/24koi/p/17106987.html