15.4 浮點計算程序表現奇怪, 在不同的機器上給出不同的結果。

首先閱讀問題 14.2.

如果問題並不是那麼簡單, 那麼回想一下, 電腦一般都是用一種浮點的格式來近似 的模擬實數的運算, 注意是近似, 不是完全。下溢、誤差的累積和其它非常規性是 常遇到的麻煩。

不要假設浮點運算結果是精確的, 特別是別假設兩個浮點值可以進行等價比較。也 不要隨意的引入 ``模糊因素"; 參見問題 14.5

這並不是 C 特有的問題, 其它電腦語言有一樣的問題。浮點的某些方面被通常 定義為 ``中央處理器 (CPU) 是這樣做的" (參見問題 11.34), 否則在一 個沒有 ``正確" 浮點模型的處理器上, 編譯器要被迫做代價非凡的仿真。

本文不打算列舉在處理浮點運算上的潛在難點和合適的做法。一本好的有關數字 編程的書能涵蓋基本的知識。參見下面的參考資料。

參考資料: [K&P, Sec. 6 pp. 115-8]; [Knuth, Volume 2 chapter 4]; [Goldberg]。

翻譯朱群英、孫雲, LaTeX2HTML 編譯 朱群英 (2005-06-23)