15. 浮点数算法:争议和限制

浮点数在计算机中表达为二进制(binary)小数。例如:十进制小数:0.125是 1/10 + 2/100 + 5/1000 的值,同样二进制小数:0.001是 0/2 + 0/4 + 1/8。这两个数值相同。唯一的实质区别是第一个写为十进制小数记法,第二个是二进制。不幸的是,大多数十进制小数不能完全用二进制小数表示。结果是,一般情况下,你输入的十进制浮点数仅由实际存储在计算机中的近似的二进制浮点

14. 浮点数算法:争议和限制

浮点数在计算机中表达为二进制(binary)小数。例如:十进制小数:0.125是 1/10 + 2/100 + 5/1000 的值,同样二进制小数:0.001是 0/2 + 0/4 + 1/8。这两个数值相同。唯一的实质区别是第一个写为十进制小数记法,第二个是二进制。遗憾的是,大多数十进制小数不能精确的表达二进制小数。这个问题更早的时候首先在十进制中发现。考虑小数形式的 1/3,你可以来个十进制的