請問有人可以解釋一下,在計算機機器/硬件/計算器中如何得出兩個操作順序產生不同結果?計算機中的浮點計算
序列1
第1步:1/3
步驟2:(步驟1的結果)* 3
回答= 1個
序列2
步驟1:0.3333333333(高達可能的入口)
步驟2:(步驟1的數目)* 3
回答= 0.9999999999
據我知道,當浮動號碼不能被精確地通過計算機中儲存的或表示的100%。如果序列1正在產生舍入值,那麼爲什麼不序列2或者是否存在特殊處理1/3,2/3的校驗的任何harwired算法?
我已經在移動計算器,Windows計算器應用程序,Microsoft Excel表中試過。所有結果都一樣。
因爲1/3不同於0.3333333333 ... –
但是我們知道內存的固定大小有限,所以存儲.33333會導致一些截斷。那麼它如何以不同的方式處理 – Bhupendra
你打了多少三分?例如,在一種常見的格式中,您需要大約16個三分之一才能得到與計算1/3相同的近似值。 –