深入理解計算機系統 第二章

2021-07-28 12:09:35 字數 764 閱讀 4709

(1)什麼是規格化的值?

當exp的位模式既不全為0,也不全為1,這種情況下,階碼字段被解釋為以偏置形式表示的有符號整數,也就是說,階碼的值是e=e-bias,其中e是無符號數,其位表示為,而bias就是乙個等於2k-1 - 1的

偏置值。

(2)什麼是非規格化的值?
當階碼域全為0時,所表示的就是非規格化的形式。在這種情況下,階碼值是e=1-bias,而尾數的值就是m=f,也就是小數字段的值,不包括隱含的開頭的1

(2)什麼是特殊值?
當階碼域全為1時,小數域全為0時,得到的值為無窮,當s=0時+無窮,或者當s=1時-無窮,當小數域為非零時,結果值為nan,就是「不是乙個數」的縮寫。

練習把整數轉化為浮點數對理解浮點很有好處,下面給出一些具體例子。

c語言的捨入方法中,若整數處於步長的前半,則向下捨入,否則向上捨入。而對於剛好處於中間的數,這種與前後的可取的數距離相等,則採用向偶數捨入的原則。即取表示成float形式後,最後一位為偶數(0)的數。

《深入理解計算機系統》第二章部分習題

人生第一篇博文。深入理解計算機系統 第二章部分習題 2.62 int shifts are arithmetic 對int型別數使用算術右移返回1,否則返回0 顯然,只需考慮負數即可 非負數算術右移與邏輯右移相同 這裡以 1為例,1算術右移一位,所產生的二進位製碼代表的數值不變 而邏輯右移則會使最高...

深入理解計算機系統第二章家庭作業

2.91遵循位級浮點編碼規則,實現具有如下原型的函式 compute f if f is nan then return f.float bits float absval float bits f 對於浮點數f,這個函式計算 f 如果f是nan,你的函式應該簡單地返回f。測試你的函式,對引數f可以...

深入理解計算機系統

關鍵路徑是在迴圈的反覆執行中形成的資料相關鏈。迴圈展開是一種程式變換,通過增加每次迭代計算的元素的數量,減少迴圈的迭代次數。重新結合變換能夠減少計算中關鍵路徑上操作的數量,通過更好地利用功能單元的流水線能力得到更好的效能。浮點運算不保證是可結合的,通常迴圈展開和並行地累積在多個值中,是提高程式效能的...