float資料的記憶體表示

2021-06-09 16:20:18 字數 651 閱讀 2245

將-0.15625表示成機器內的32個位元組的形式. 

第一步:將-0.15625表示成二進位制形式: (-0.15625)(十進位制數)=(-0.00101)(二進位制形式); 

第二步:將二進位制形式的浮點數轉化為規格化的形式:(小數點向右移動3個二進位制位可以得到) 

-0.00101=-1.01*2^(-3) 同樣,產生了三項:

符號位:該數為負數,故第31位為1,佔乙個二進位制位; 

階碼:指數為-3,故其階碼為127+(-3)=124=01111100,佔從第30到第23共8個二進位制位; 

尾數為小數點後的01,當然後面要補21個0; 

所以,-0.15625在記憶體中的實際表示形式為: 

1 01111100 01000000000000000000000 

由於小端所以:

00000000 

00000000

00100000

10111110

如果 printf("%f",1);

則記憶體中:

00000001 

00000000

00000000

00000000

所以輸出值的二進位制是1.0000000 00000000 00000001*2^(-127)

基本上就是0了。

float資料在記憶體中的儲存

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

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

float型別數字在計算機中用4個位元組儲存。遵循ieee 754格式標準 乙個浮點數有2部分組成 底數m和指數e 底數部分 使用二進位制數來表示此浮點數的實際值 指數部分 占用8bit的二進位制數,可表示數值範圍為0 255 但是指數可正可負,所以,ieee規定,此處算出的次方必須減去127才是真...

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

乙個浮點數有2部分組成 底數m和指數e 底數部分 使用二進位制數來表示此浮點數的實際值 指數部分 占用8bit的二進位制數,可表示數值範圍為0 255 但是指數可正可負,所以,ieee規定,此處算出的次方必須減去127才是真正的指數。所以,float型別的指數可從 126到128 底數部分實際是占用...