我應該期待在兩個理論上相等的雙精度數字之間進行減法時會出現什麼樣的數量級差異?我有兩個雙精度數組。預計它們在理論上是相同的。它們都是由兩種完全不同的方法計算出來的,所以它們之間有一些數值上的差異。我檢查他們的元素,我最大的區別是出來是 6.5557799910909154E-008。我的老闆說,對於雙精度這是一個非常高的差異,但我認爲,如果E-008的順序的差異,那麼它的好。雙精度數量級
謝謝 普拉迪普
我應該期待在兩個理論上相等的雙精度數字之間進行減法時會出現什麼樣的數量級差異?我有兩個雙精度數組。預計它們在理論上是相同的。它們都是由兩種完全不同的方法計算出來的,所以它們之間有一些數值上的差異。我檢查他們的元素,我最大的區別是出來是 6.5557799910909154E-008。我的老闆說,對於雙精度這是一個非常高的差異,但我認爲,如果E-008的順序的差異,那麼它的好。雙精度數量級
謝謝 普拉迪普
Double precision floating point具有以下格式
這給出15-17位十進制數字的精度。如果一個十進制字符串最多有15個十進制轉換爲IEEE 754雙精度,然後再轉換回相同的有效十進制數,那麼最後一個字符串應該與原始值匹配;並且如果IEEE 754雙精度轉換爲十進制字符串,並且至少有17位有效小數,然後轉換回爲double,那麼最終數字必須與原始數字匹配。
Single precision floating point具有以下格式
這給出6到9位重要的十進制數字的精度(如果一個十進制字符串爲最多6位有效小數轉換爲IEEE 754單精度,然後轉換回相同數量的有效小數,然後最後一個字符串應與原始數據匹配;並且如果IEEE 754單精度轉換爲至少有9位有效小數的十進制字符串,然後轉換回單精度,則最終編號必須與原始值匹配。
您遇到的最大差異表示類似於轉換爲單精度的精度損失。
你知道哪兩種方法更準確嗎?它是計算速度與精度之間的主要區別,還是算法在數值上不太穩定?輸入的精度是多少?如果你的輸入不是那麼精確的話,精度的8位十進制數的差值可能不相關......或者它可能意味着在行星軌道上失蹤的火星。