1. 程式人生 > >浮點數在計算中的存儲

浮點數在計算中的存儲

family blog .net 符號 長度 blank href 例如 details

在前面一篇文章中,說到了怎麽將數字轉換成二進制。

以下的內容會用到,把鏈接帖在這裏:點擊打開鏈接


一 浮點數在計算機中的表示,

浮點數一般分為32位和64位,對照方下:

類型 符號位 階碼 尾數 長度
float 1 8 23 32
double 1 11 52 64


以下以32位為例:

F = (S)*M*2^E
S:符號,1位,0-整,1-負
M:尾數。23位,整數部分固定為1,不讀進內存
E:階碼。8位,偏移127

# 0是特定值。E,M都為0

終於格式例如以下:SEEEEEEE EMMMMMMM MMMMMMMM MMMMMMMM

比如,前一篇文章用到的樣例,求出的22.8125的二進制形式為:10110.1101 = 1.01101101 * 2^4,因此。

S=0

M= 0110110 10000000 00000000

E=00000400

所以22.8125在計算機中的表示形式就為:00000040 00110110 10000000 00000000

浮點數在計算中的存儲