计算机基础知识
1.为什么计算机进行小数运算的时候会出错?
首先来看一下二进制数1011.0011转化成10进制数的方式,如下图所示。
该转换方式同样适用于16进制转10进制。
小数运算出错的原因在于,一些小数无法转化成2进制,比如0.1就无法用2进制表示。
十进制数0.1转换成二进制后,会变成0.00011001100…(1100循环)这样的循环小数这和无法用十进制数来表示1/3是一样的道理。1/3就是0.3333…。
对于这样的数据,计算机会根据数据的长度进行四舍五入。
如何避免这种错误
1.把小数转化成整数来计算。
2.转化成BCD码来计算。