浮點數(shù)的一般表示

1.浮點數(shù)初探

眾所周知計算機存儲數(shù)據(jù)都是以二進(jìn)制形式存儲的,并且主要分為定點整數(shù)和浮點小數(shù)兩大類。浮點數(shù)由階碼尾數(shù)組成,其中階碼決定了浮點數(shù)表示的范圍,而尾數(shù)則決定了浮點數(shù)表示的精度。

2.浮點數(shù)的一般格式

3.規(guī)格化的浮點數(shù)

1.尾數(shù)用原碼表示

其規(guī)格化尾數(shù)形式為:s.1xxxxxx,即小數(shù)點后首位必須是1。

2.尾數(shù)用補碼表示

若尾數(shù)≥0,則其規(guī)格化尾數(shù)形式為:0.1xxxxxx,若尾數(shù)<0,則其規(guī)格化尾數(shù)形式為:1.0xxxxxx,由此觀之,尾數(shù)的符號位與小數(shù)點后首位是異或邏輯。

用補碼表示的尾數(shù)范圍為:

  • 最大正數(shù):0.1111111 = 1-2^{-7}
  • 最小正數(shù):0.1000000 = 2^{-1}
  • 最大負(fù)數(shù):1.0111111 = -2^{-1}-2^{-7}
  • 最小負(fù)數(shù):1.0000000 = -1

3.尾數(shù)的左規(guī)與右規(guī)

  • 左規(guī):若采用變形補碼表示尾數(shù),則當(dāng)結(jié)果的尾數(shù)出現(xiàn)11.1xxx...x00.0xxx...x的形式時,需將尾數(shù)左移1位,階碼減1,直到尾數(shù)為規(guī)格化形式為止。
  • 右規(guī):當(dāng)浮點運算結(jié)果的尾數(shù)出現(xiàn)01.xxx...x10.xxx...x的形式時,并不一定溢出,應(yīng)先將尾數(shù)右移1位,階碼加1,然后判斷階碼是否溢出。

4.階碼的表示

在計算機中,浮點數(shù)的階碼多用移碼來表示,移碼的好處是加偏移量將負(fù)數(shù)用正數(shù)表示,便于比較階碼的大小。例如4位移碼的偏移量就是1000,從而用原本補碼表示的1000在加上偏移量1000后就會變?yōu)?000,0111就變?yōu)?111便于比較大小。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容