首先浮點數在內存中佔四個字節,就是32個二進制位
第1位用來表示符號位,第2~9位用來表示階數,最後23位表示浮點數化成科學計數後的尾數(小數點前面必須是1);
要表示浮點數,只要表示浮點數的符號,階數,尾數就行了
例如:12.25的表示:
12.25 = 1100.01 = 1.10001*2^3
符號位爲0 , 階數爲3, 尾數爲100001;
階數位是階數 3 與 127 的和,就是-126,== 10000010
尾數 10001 不夠 23 位,所以往後補零
12.25在內存中表示爲 0100 0001 0100 0100 0000 0000 0000 0000
表示成十六進制爲 41 44 00 00
小端存放(低地址存放低位數,高地址存放高位數)之後,內存中就是 00 00 44 41
#include<stdio.h>
int main()
{
float f = 12.25;
return 0;
}
//調試結果: