浮點數/浮點數算術
外觀
< 浮點數
如果我們不能對浮點數進行運算,它們將毫無用處。幸運的是,存在執行基本算術運算(加法、減法、乘法、除法)以及其他運算(如指數、平方根和超越函式)的演算法。本頁將介紹一些基本的算術運算,更高階的演算法將留待後面的頁面介紹。
讓我們將以下兩個數字相乘
變數 符號 指數 小數 X 0 1001 010 Y 0 0111 110
以下是步驟
- 首先,將這兩個表示形式轉換為科學記數法。因此,我們顯式地表示隱藏的 1。
- 在本例中,X 為 1.01 X 22,Y 為 1.11 X 20。
- 令 x 為 X 的指數。令 y 為 Y 的指數。結果指數(稱為 z)是兩個指數的總和。在下一步之後可能需要調整 z。
- 目前,結果指數為 2 + 0 = 2
- 將 X 的尾數乘以 Y 的尾數。將此結果稱為 m。
- 將 1.01 乘以 1.11 結果為 10.0011
- 如果 m 不在基點左側保留一個 1,則調整基點以使其保留一個 1,並調整指數 z 以進行補償。
- 現在,我們必須將 10.0011 重新規範化為 1.00011,並將指數增加 1 到 3
- 將符號位相加,模 2,以獲得結果乘法的符號。
- 符號位為 0 + 0 = 0。
- 轉換回一個位元組的浮點表示,必要時截斷位。
- 我們需要將 1.00011 x 23 截斷為 1.000 x 23 並轉換。
Product sign exponent fraction X * Y 0 1010 000