定點整數 與 定點小數
1.0 就是定點整數
1.3646416 定點小數
諸如此類
公式是如何得來的
這裡我們 來一個 4位的, 就是 n= 4
那麼這裡我們 取值範圍 就是(首位表示正負),則 111 就是最大
取出正負,
換算就是 1111到 0111.
然而我們是如何求值的呢? 就是 2^2 + 2^1 + 2^0 = 7 得到就是 【-7,7】
則這其實可以轉化為 2^3-1 = 7
所以帶入,公式 2^n-1 - 1 公式成立
定點整數計算
定點小數計算
表示
在數學中,要表示一個很大的數時,我們常常使用一種稱為科學計數法的方式:
N=M*Re
其中M稱為尾數,e是指數,R為基數。
浮點數就是使用這種方法來表示大範圍的數,其中指數一般是2,8,16。而且對於特定機器而
言,指數是固定不變的,所以在浮點數中指數並不出現。從這個表示式可以看出:浮點數表示的精
讀取決於尾數的寬度,範圍取決於基數的大小和指數的寬度。
運算過程
浮點數的運算主要有三個步驟:對階、尾數計數、結果格式化。
(1)對階
首先計算兩個數的指數差,把指數小的向指數大的對齊,並將尾數右移指數差的位數,這樣兩
個浮點數就完成了對階的操作。
對階的例子
3.14 * 10^3 + 1.15*10^5
換算
0.0314 * 10^5 + 1.15*10^5
可以看出,對階的過程可能使得指數小的浮點數失去一些有效位。
如果兩個浮點數階數相差很大,大於指數小的浮點數的尾數寬度,那麼對階後那個浮點數的尾數就
變成了0,即當做機器零處理了。
(2)尾數計算
對階完成後,兩個浮點數尾數就如同定點數,計算過程同定點數計算。
(3)結果格式化
尾數計算後,可能會產生溢位,此時將尾數右移,同時指數加1,如果指數加1後發生了溢位,
則表示兩個浮點數的運算髮生了溢位。
如果尾數計算沒有溢位,則尾數不斷左移,同時指數減1,直到尾數為格式化數。如果這個過程
中,指數小於機器能表達的最小數,則將結果置“機器零”,這種情況稱為下溢。
特點
本作品採用《CC 協議》,轉載必須註明作者和本文連結