Floating point 无扩展精度FPU的数值陷阱

Floating point 无扩展精度FPU的数值陷阱,floating-point,ieee-754,numerical,numerical-methods,numerical-analysis,Floating Point,Ieee 754,Numerical,Numerical Methods,Numerical Analysis,Monniaux的优秀文章给出了意外数字行为的示例。然而,大多数示例依赖于扩展精度FPU或扩展精度操作(例如乘法累加)。除了符号零和涉及NaN的比较外,当扩展精度硬件被禁用时,是否有令人惊讶的数值行为的好例子?程序员经常感到惊讶的一个例子是当x+1==x时。在单精度浮点运算中,由于尾数的精度有限,对于小到2^25的x也是如此。当模拟中的时间值以小时间步长递增时,通常会出现这种情况。A影响了爱国者导弹。程序员经常感到惊讶的一个例子是x+1==x。在单精度浮点运算中,由于尾数的精度有限,对于小到2^

Monniaux的优秀文章给出了意外数字行为的示例。然而,大多数示例依赖于扩展精度FPU或扩展精度操作(例如乘法累加)。除了符号零和涉及NaN的比较外,当扩展精度硬件被禁用时,是否有令人惊讶的数值行为的好例子?

程序员经常感到惊讶的一个例子是当
x+1==x
时。在单精度浮点运算中,由于尾数的精度有限,对于小到
2^25
x
也是如此。当模拟中的时间值以小时间步长递增时,通常会出现这种情况。A影响了爱国者导弹。

程序员经常感到惊讶的一个例子是
x+1==x
。在单精度浮点运算中,由于尾数的精度有限,对于小到
2^25
x
也是如此。当模拟中的时间值以小时间步长递增时,通常会出现这种情况。A影响了爱国者导弹。

是的,很好的例子。我要指出的是,任何两个指数不同的数字都会出现精度损失:当指数的大小足够大时,其中一个项就会完全吸收。是的,这是一个很好的例子。我要指出的是,任何两个指数不同的数字都会出现精度损失:当指数的大小足够不同时,其中一个项就会完全吸收。