軟考筆記二
目錄
- 軟考筆記二
- 浮點數的加減法運算
- 一、對階
- 二、 尾數求和
- 三、規格化
- 四、舍入
- 五、溢位判斷
浮點數的加減法運算
前言:
運算過程:對階、尾數求和、規格化、舍入、溢位判斷
在計算機中,加減法運算用補碼實現。
算術運算的常識:兩個浮點數如果要進行加減法運算,它們的階或者指數必須相等。
一、對階
求階差
如果把階碼大的向階碼小的看齊,就要把階碼大的數的尾數部分左移,階碼減小。這個操作有可能在移位過程中把尾數的高位部分移掉,這樣就引發了資料的錯誤,所以,尾數左移在計算機運算中不可取。
如果把階碼小的向階碼大的看齊,在移位過程中如果發生資料丟失,也是最右邊的資料位發生丟失,最右邊的資料位丟失,只會影響資料的精度,不會影響資料的大小。
在計算機中,採用小階向大階看齊的方法,實現對階。
二、 尾數求和
補碼加法
三、規格化
提高浮點數的表示精度,把計算機的提供的能夠表示資料的硬體資源儘可能有效的利用起來。
- 左規
尾數左移一位,階碼減1,直到數符和第一數位不同為止(機器數表示方式是補碼)。 - 右規(尾數的絕對值太大時,右規)
尾數右移一位,階碼加1。
當尾數溢位( >1 )時,需要右規。
是否溢位,可以透過兩位的符號位得出:
即尾數出現01.xx…xx或10.xx…xx(兩位符號位不同)
四、舍入
是指資料的長度超過了計算機當中儲存資料的物理器件所儲存的資料長度。低位部分就要進行處理,保證資料能夠以比較精確的精度儲存在計算機當中。
在對階和右規過程中,可能出現尾數末位丟失,引起誤差。為了儘可能減小誤差,就需要考慮舍入。
舍入的方法:
-
截斷法
將移出的資料一律捨去。該方法簡單,很常用。但是影響精度。 -
0舍1入法
移掉的是1,則尾數末尾加1,移掉的是0,就不加。 -
(末位)恆置“1”法
將要保留的末位資料恆置1,無論右移掉的是1還是0,末位是1還是0。