浮点运算中的舍入误差

Rounding error in floating-point arithmetic

IEEE-754浮点运算有几种舍入方式:

如果在使用四舍五入进行一些计算时得到了很大的绝对舍入误差(接近理论界限),这是否意味着如果相同则误差会很小使用 舍入 ?

进行计算

我想澄清一下我的问题:

假设我们需要使用带浮点边界的区间算法来近似 x 的值,即计算数字 ab 这样 a <= x <= b.

例如,设x = x1+x2+...+xn,其中x1,x2,…,xn有限正浮点数。

  1. 首先,a 是向下舍入计算的: a=RD(x1+x2+...+xn).
  2. 然后,通过四舍五入计算 b: b=RU(x1+x2+....+xn).

接下来,假设我们知道

x - a <= EPS,

还有那个

b - x <= 每股收益,

其中 x 是精确的总和。

[a, b]区间长度的上限有效:b-a <= EPS or b-a <= 2EPS?

是的。

假设精确的数学结果 x 落在两个有限的可表示值之间,ab, a < b。误差的最小上限是 ba。设 e 为四舍五入时的误差(因此 eb x),令其接近ba。那么四舍五入时的误差是bae,所以相对于ba.

如果 ab 都不是有限的,则:

  • b为+∞,向上舍入误差无穷大,向下舍入误差有限,比较小,或
  • a为-∞,向上取整时误差有限,向下取整时误差无限大。

在最后一种情况下,向上舍入时的误差不能在您定义的意义上大,因为它必须是有限的,因此不能接近这种情况下的理论界限,即 ∞。所以这个区间内没有满足你先决条件的结果。