1.浮點(diǎn)數(shù)初探
眾所周知計算機(jī)存儲數(shù)據(jù)
都是以二進(jìn)制
形式存儲的井赌,并且主要分為定點(diǎn)
整數(shù)和浮點(diǎn)
小數(shù)兩大類壕曼。浮點(diǎn)數(shù)由階碼
和尾數(shù)
組成琳拨,其中階碼決定了浮點(diǎn)數(shù)表示的范圍
月褥,而尾數(shù)則決定了浮點(diǎn)數(shù)表示的精度
弛随。
2.浮點(diǎn)數(shù)的一般格式
3.規(guī)格化的浮點(diǎn)數(shù)
1.尾數(shù)用原碼表示
其規(guī)格化尾數(shù)形式為:s.1xxxxxx
,即小數(shù)點(diǎn)后首位
必須是1宁赤。
2.尾數(shù)用補(bǔ)碼表示
若尾數(shù)≥0,則其規(guī)格化尾數(shù)形式為:0.1xxxxxx
舀透,若尾數(shù)<0,則其規(guī)格化尾數(shù)形式為:1.0xxxxxx
,由此觀之决左,尾數(shù)的符號位與小數(shù)點(diǎn)后首位是異或
邏輯愕够。
用補(bǔ)碼表示的尾數(shù)范圍為:
- 最大正數(shù):0.1111111 =
![]()
- 最小正數(shù):0.1000000 =
![]()
- 最大負(fù)數(shù):1.0111111 =
![]()
- 最小負(fù)數(shù):1.0000000 =
![]()
3.尾數(shù)的左規(guī)與右規(guī)
- 左規(guī):若采用
變形補(bǔ)碼
表示尾數(shù),則當(dāng)結(jié)果的尾數(shù)出現(xiàn)11.1xxx...x
或00.0xxx...x
的形式時佛猛,需將尾數(shù)左移1位惑芭,階碼減1,直到尾數(shù)為規(guī)格化形式為止继找。- 右規(guī):當(dāng)浮點(diǎn)運(yùn)算結(jié)果的尾數(shù)出現(xiàn)
01.xxx...x
或10.xxx...x
的形式時遂跟,并不一定溢出,應(yīng)先將尾數(shù)右移1位婴渡,階碼加1幻锁,然后判斷階碼
是否溢出。
4.階碼的表示
在計算機(jī)中边臼,浮點(diǎn)數(shù)的階碼
多用移碼
來表示哄尔,移碼的好處是加偏移量
將負(fù)數(shù)用正數(shù)表示,便于比較階碼的大小硼瓣。例如4位移碼的偏移量就是1000究飞,從而用原本補(bǔ)碼表示的1000在加上偏移量1000后就會變?yōu)?000,0111就變?yōu)?111便于比較大小堂鲤。