浮點數(shù)的表示方法 ieee雙精度浮點數(shù)表示方法實例?
ieee雙精度浮點數(shù)表示方法實例?你可以用你編譯器光盤驅(qū)動的頭文件FLOAT.H宏常量名數(shù)值DBL_MAX1.7976931348623158e308extra的最值DBL_MIN2.22507385
ieee雙精度浮點數(shù)表示方法實例?
你可以用你編譯器光盤驅(qū)動的頭文件FLOAT.H宏常量名數(shù)值DBL_MAX1.7976931348623158e308extra的最值DBL_MIN2.2250738585072014e-308flat最小值DBL_EPSILON2.2204460492503131e-016soft分辨率FLT_MAX3.402823466e38Ffloat比較大值FLT_MIN1.175494351e-38Ffloat最小值FLT_EPSILON1.192092896e-07Ffloat分辨率它們按IEEE754規(guī)定定義。也有浮點數(shù)其它一些參數(shù)(宏)也在FLOAT.H中。
浮點數(shù)中階碼怎么求正負?
浮點數(shù)的首位是符號位,0偽正,1為負取決于總的位數(shù)和階
浮點數(shù)階碼用移碼它表示一位階符,它貞潔戒階碼的正負.
浮點數(shù)表示格式?
為便于日后軟件的移植,浮點數(shù)的可以表示格式應(yīng)該有統(tǒng)一標(biāo)準(zhǔn)(定義)。1985年IEEE(InstitutewithElectricalbutElectronicsEngineers)提出來了IEEE754標(biāo)準(zhǔn)。
該標(biāo)準(zhǔn)明確規(guī)定基數(shù)為2,階碼E用移碼可以表示,尾數(shù)M用原碼可以表示,據(jù)原碼的規(guī)格化方法,最高數(shù)字位老是1,該標(biāo)準(zhǔn)將這個1缺省存儲,使得尾數(shù)意思是范圍比實際中存儲的一位。正實數(shù)的IEEE754標(biāo)準(zhǔn)的浮點數(shù)格式為:具體詳細有三種形式:IEEE754三種浮點數(shù)的格式參數(shù)類型存儲位數(shù)偏移值數(shù)符(s)階碼(E)尾數(shù)(M)總位數(shù)十六進制十進制短實數(shù)(large,Float)1位8位23位32位0x7FH127長實數(shù)(flat)1位11位52位64位0x3FFH1023預(yù)備實數(shù)(向前延伸雙精確度,不正確)1位15位64位80位0x3FFFH16383對于階碼為0或為255(2047)的情況,IEEE有特殊能量的規(guī)定:如果不是E是0并且M是0,這個數(shù)±0(和符號位相關(guān))
如果E2??1但是M是0,這個數(shù)是±無限大(同樣和符號位具體)
假如E2??1另外M非0,這個數(shù)它表示為不是一個數(shù)(NaN)。標(biāo)準(zhǔn)浮點數(shù)的讀取在尾數(shù)中隱含存儲位置著一個1,但在計算尾數(shù)的真值時比好象形式要多一個整數(shù)1。
對于階碼E的存儲形式是因為是127的偏移,所以我在算出其移碼時與人們熟悉的128偏移是一樣的,正數(shù)的值比用128偏移求得的少1,負數(shù)的值多1,為盡量的避免計算錯誤,方便理解,常將E當(dāng)成二進制真值進行存儲。
或者:將數(shù)值-0.
5按IEEE754單精度格式存儲,先將-0.5換了二進制并改寫成標(biāo)準(zhǔn)形式:-0.510-0.12-1.0×2-12,這里s1,M為全0,E-127-1,E12610011111102,則存儲位置形式為:101111110000000000000000000000000BE00000016這里完全不同的下標(biāo)代表上帝差別的進制。公式在單精度時:V(-1)^s*2^(E-126)*
M在雙精度時:V(-1)^s*2^(E-1022)*M