float資料在記憶體中的儲存形式

2021-07-22 08:47:33 字數 829 閱讀 1281

float型別數字在計算機中用4個位元組儲存。遵循ieee-754格式標準:

乙個浮點數有2部分組成:底數m和指數e

底數部分 使用二進位制數來表示此浮點數的實際值

指數部分 占用8bit的二進位制數,可表示數值範圍為0-255

但是指數可正可負,所以,ieee規定,此處算出的次方必須減去127才是真正的指數。

所以,float型別的指數可從-126到128

底數部分實際是占用24bit的乙個值,但是最高位始終為1,所以,最高位省去不儲存,在儲存中佔23bit

科學計數法。

格式:seee eeee emmm mmmm mmmm mmmm mmmm mmmm

s表示浮點數正負    

e指數加上127後的值得二進位制資料

m底數舉例:

17.625在記憶體中的儲存

首先要把17.625換算成二進位制:10001.101

整數部分,除以2,直到商為0,餘數反轉。

小數部分,乘以2,直到乘位0,進製順序取。

在將10001.101右移,直到小數點前只剩1位:

1.0001101 * 2^4 因為右移動了四位

這個時候,我們的底數和指數就出來了

底數:因為小數點前必為1,所以ieee規定只記錄小數點後的就好。所以,此處的底數為:0001101

指數:實際為4,必須加上127(轉出的時候,減去127),所以為131。也就是10000011

符號部分是整數,所以是0

綜上所述,17.625在記憶體中的儲存格式是:

01000001 10001101 00000000 00000000    

換算回去:自己做。

float資料在記憶體中的儲存

浮點型變數在計算機記憶體中占用4位元組 byte 即32 bit。遵循ieee 754格式標準。乙個浮點數由2部分組成 底數m 和 指數e。mantissa 2exponent 注意,公式中的mantissa 和 exponent使用二進位制表示 底數部分 使用 進製數來表示此浮點數的實際值。指數部...

float在記憶體中的儲存

以下內容來自於 1.十進位制轉二進位制 1.1整數 11 2 5 餘 1 5 2 2 餘 1 2 2 1 餘 0 1 2 0 餘 1 0結束 11二進位制表示為 從下往上 1011 1.2小數 0.9 2 1.8 取整數部分 1 0.8 1.8的小數部分 2 1.6 取整數部分 1 0.6 2 1....

float資料在記憶體中的儲存方法

浮點型變數在計算機記憶體中占用4位元組 byte 即32 bit。遵循ieee 754格式標準。乙個浮點數由2部分組成 底數m 和 指數e。mantissa 2exponent 注意,公式中的mantissa 和 exponent使用二進位制表示 底數部分 使用 進製數來表示此浮點數的實際值。指數部...