0

我一直认为256,007.000333.

对于问题的上下文,在工程课程中,我们应该展示带有旋转的 LU 分解如何比不使用旋转在数值上更稳定。这本书认为,将最大的枢轴置换到位更稳定,但在我看来,最小的数字是最好的,这样你就不会得到微小的小数。

4

1 回答 1

2

浮点数通常使用固定格式存储,即大小不变的预定格式。

最常用的格式是 IEEE-754“单精度”和“双精度”格式。前者使用三个字段来编码一个数字(或某些特殊的“值”,例如 Not a Number 值)。第一个字段是指定符号(- 或 +)的单个位S。第二个字段是八位,指定指数代码E。第三个字段是 23 位,包含有效位F。代表的数字是:

  • 如果E为0,则数为(-1) S •*0。F 2 •2 1−127。“0。F 2 ”表示写“0”。后跟F的 23 位并将其解释为二进制数字,因此例如 0.110000000000000000000000 表示 ¾。
  • 如果E为 1 至 254,则数字为 (-1)•<sup> S *1。F 2 •2 E -127
  • 如果E为 255 且F为零,则该数为无穷大,(−1) S ∞。
  • 如果E为 255 且F不为零,则该值为非数字 (NaN)。

如您所见,这种格式总是使用 32 位来表示它所代表的任何数字。256,007 没有更多或 0.000333 更少。此外,这种格式不能代表 .000333。它可以表示的最接近的是 0.00033300000359304249286651611328125。

使用这些数字时发生的错误确实取决于数字的大小。在任何操作中,结果都必须四舍五入以适应格式,并且与精确结果的接近程度部分取决于指数。

关于数值分析的教科书通常在编写时考虑到这些格式。教科书考虑的错误类型是由这些浮点格式引起的。选择一个枢轴而不是另一个枢轴的原因与计算中的数字如何相互作用(不仅仅是从格式上)。

有些格式使用不同数量的内存。这些大多是“任意精度”格式,这意味着用于表示数字的精度和内存量不是预先固定的,而是根据情况进行调整的。如果我们使用这样的数字,数值分析会有所不同,因为理论上我们可以通过使用越来越多的内存来使最终误差尽可能小,而不管所涉及的值的大小。换句话说,我们可以选择一个小的枢轴,而不是选择一个大的枢轴,但要求很多很多的精度。

于 2021-11-05T12:11:32.360 回答