關於浮點數加減法時尾數的規格化處理


當尾數用二進制表示時,浮點規格化的定義是尾數M應滿足:

                               1/2   ≤  |M|<1

顯然對於正數而言,有M = 00.1φφ…φ;
對於負數,其補碼形式為11.0φφ…φ(即-0.0*******,左歸)。
這樣,當進行補碼浮點加減運算時,只要對運算結果的符號位和小數點后的第一位進行比較:如果它們不等,即為00.1φφ…φ或11.1φφ…φ,就是規格化的數;如果它們相等,即為00.0φφ…φ或11.0φφ…φ,就不是規格化的數,在這種情況下需要尾數左移以實現規格化的過程,叫做向左規格化。規則是:尾數左移1位,階碼減1。

在浮點加減運算時,尾數求和的結果也可以得到01.φφ…φ或10.φφ…φ,即兩符號位不相等,在這定點加減運算中稱為溢出,是不允許的。但在浮點運算中,它表明尾數求和結果的絕對值大於1,向左破壞了規格化。此時將尾數運算結果右移以實現規格化表示,稱為向右規格化,即尾數右移1位,階碼加1。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM