在電腦程式設計中,雙精度資料型態通常被假定為具有 15 位小數的近似精度。但是,某些數字表示形式(例如 1.0/7.0)在變數內部表示時似乎具有更高的精確度。本文將探討為什麼會發生這種情況,以及為什麼精確度通常被描述為小數點後 15 位左右。
IEEE 雙精度數有 53 個有效位,約等於 15.95 個小數位。為了考慮舍入,實現將精度 (DBL_DIG) 設定為 15。這幾乎提供了超出 DBL_DIG 所暗示的精度的額外十進制數字。
顯示雙精度時,編譯器通常會根據精度對值進行舍入。例如,1.0/7.0,當顯示為“%.17g”時,具有 17 位元精度。但是,如果使用“%.64g”,則不會出現超出預期 15 位元精度的有效數字。
雙精度數字具有允許大約 15.95 位十進制數字的內部表示形式的精度。然而,由於四捨五入的原因,顯示精度通常設定為小數點後 15 位。此解釋有助於闡明為什麼某些精確數字(例如 1.0/7.0)在內部似乎具有更高的精確度,但在顯示時仍符合估計的 15 位元精度。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3