定點(diǎn)數(shù)和浮點(diǎn)數(shù)

在選擇計(jì)算機(jī)的數(shù)據(jù)表示方式時(shí),通常需要考慮4點(diǎn)因素:

  1. 要表示的數(shù)據(jù)類型(整數(shù)峦剔,小數(shù),實(shí)數(shù)和復(fù)數(shù))

  2. 數(shù)值范圍

  3. 精確度

  4. 數(shù)據(jù)存儲(chǔ)和處理所需要的硬件代價(jià)

計(jì)算機(jī)處理的數(shù)據(jù)多帶有小數(shù)點(diǎn)荞彼,小數(shù)點(diǎn)在計(jì)算機(jī)中可以有兩種方法表示觉既;一種數(shù)約定數(shù)值的小數(shù)點(diǎn)固定在某一位置,稱為定點(diǎn)表示法阀参,簡(jiǎn)稱為定點(diǎn)數(shù)肝集。對(duì)應(yīng)的另一種方法,小數(shù)點(diǎn)可以任意浮動(dòng)蛛壳,稱為浮點(diǎn)表示法杏瞻,簡(jiǎn)稱為浮點(diǎn)數(shù)


1. 定點(diǎn)數(shù)表示法(fixed-point)

所謂定點(diǎn)衙荐,就是約定機(jī)器中數(shù)據(jù)的小數(shù)點(diǎn)位置固定不變捞挥。在計(jì)算機(jī)中,通常將數(shù)據(jù)的小數(shù)點(diǎn)固定在數(shù)據(jù)的最高位之前或者最低位之后忧吟。前者稱為定點(diǎn)小數(shù)砌函,后者稱為定點(diǎn)整數(shù)

定點(diǎn)小數(shù)是純小數(shù),約定的小數(shù)點(diǎn)位置在符號(hào)位之后讹俊、有效數(shù)值部分最高位之前垦沉。若數(shù)據(jù) x 的形式為 x = x0.x1x2…xn ( 其中x0為符號(hào)位,x1~xn是數(shù)值的有效部分劣像,也稱為尾數(shù)乡话, x1為最高有效位 ),則在計(jì)算機(jī)中的表示形式為:

定點(diǎn)小數(shù)

一般說(shuō)來(lái)耳奕,如果最末位 xn = 1绑青,前面各位都為 0 ,則數(shù)的絕對(duì)值最小屋群,即 |x|min = 2^(-n) 闸婴。如果各位均為 1,則數(shù)的絕對(duì)值最大芍躏,即 |x|max =1-2^(-n) 邪乍。所以定點(diǎn)小數(shù)的表示范圍是:

定點(diǎn)整數(shù)是純整數(shù),約定的小數(shù)點(diǎn)位置在有效數(shù)值部分最低位之后对竣。若數(shù)據(jù) x 的形式為 x = x0 x1x2…xn ( 其中x0為符號(hào)位庇楞,x1~xn 是尾數(shù), xn 為最低有效位 )否纬,則在計(jì)算機(jī)中的表示形式為:

定點(diǎn)整數(shù)

定點(diǎn)整數(shù)的表示范圍是:

當(dāng)數(shù)據(jù)小于定點(diǎn)數(shù)能表示的最小值時(shí)吕晌,計(jì)算機(jī)將它們作0處理,稱為下溢临燃;大于定點(diǎn)數(shù)能表示的最大值時(shí)睛驳,計(jì)算機(jī)將無(wú)法表示,稱為上溢膜廊,上溢和下溢統(tǒng)稱為溢出乏沸。

計(jì)算機(jī)采用定點(diǎn)數(shù)表示時(shí),對(duì)于既有整數(shù)又有小數(shù)的原始數(shù)據(jù)爪瓜,需要設(shè)定一個(gè)比例因子蹬跃,數(shù)據(jù)按其縮小成定點(diǎn)小數(shù)或擴(kuò)大成定點(diǎn)整數(shù)再參加運(yùn)算,運(yùn)算結(jié)果铆铆,根據(jù)比例因子炬转,還原成實(shí)際數(shù)值。若比例因子選擇不當(dāng)算灸,往往會(huì)使運(yùn)算結(jié)果產(chǎn)生溢出或降低數(shù)據(jù)的有效精度扼劈。

用定點(diǎn)數(shù)進(jìn)行運(yùn)算處理的計(jì)算機(jī)被稱為定點(diǎn)機(jī)


2. 浮點(diǎn)數(shù)表示法(floating-point number)

與科學(xué)計(jì)數(shù)法相似菲驴,任意一個(gè)J進(jìn)制數(shù)N荐吵,總可以寫成:

式中M稱為數(shù) N 的尾數(shù)(mantissa),是一個(gè)純小數(shù);E 為數(shù) N 的階碼(exponent)先煎,是一個(gè)整數(shù)贼涩,J稱為比例因子 J^(E)的底數(shù)。這種表示方法相當(dāng)于數(shù)的小數(shù)點(diǎn)位置隨比例因子的不同而在一定范圍內(nèi)可以自由浮動(dòng)薯蝎,所以稱為浮點(diǎn)表示法遥倦。

底數(shù)是事先約定好的(常取2),在計(jì)算機(jī)中不出現(xiàn)占锯。在機(jī)器中表示一個(gè)浮點(diǎn)數(shù)時(shí)袒哥,一是要給出尾數(shù),用定點(diǎn)小數(shù)形式表示消略。尾數(shù)部分給出有效數(shù)字的位數(shù)堡称,因而決定了浮點(diǎn)數(shù)的表示精度。二是要給出階碼艺演,用整數(shù)形式表示却紧,階碼指明小數(shù)點(diǎn)在數(shù)據(jù)中的位置,因而決定了浮點(diǎn)數(shù)的表示范圍胎撤。浮點(diǎn)數(shù)也要有符號(hào)位晓殊。因此一個(gè)機(jī)器浮點(diǎn)數(shù)應(yīng)當(dāng)由階碼和尾數(shù)及其符號(hào)位組成:

其中 ES 表示階碼的符號(hào),占一位伤提,E1~En 為階碼值挺物,占 n 位,尾符是數(shù) N 的符號(hào)飘弧,也要占一位。當(dāng)?shù)讛?shù)取 2 時(shí)砚著,二進(jìn)制數(shù) N 的小數(shù)點(diǎn)每右移一位次伶,階碼減小 1,相應(yīng)尾數(shù)右移一位稽穆;反之冠王,小數(shù)點(diǎn)每左移一位,階碼加 1舌镶,相應(yīng)尾數(shù)左移一位柱彻。

若不對(duì)浮點(diǎn)數(shù)的表示作出明確規(guī)定,同一個(gè)浮點(diǎn)數(shù)的表示就不是唯一的餐胀。例如 11.01 也可以表示成 0.011012^(-3) 哟楷,0.1101×2^(-2) 等等。為了提高數(shù)據(jù)的表示精度否灾,當(dāng)尾數(shù)的值不為 0 時(shí)卖擅,其絕對(duì)值應(yīng)大于等于 0.5,即尾數(shù)域的最高有效位應(yīng)為 1,否則要以修改階碼同時(shí)左右移小數(shù)點(diǎn)的方法惩阶,使其變成這一要求的表示形式挎狸,這稱為浮點(diǎn)數(shù)的規(guī)格化表示。

當(dāng)一個(gè)浮點(diǎn)數(shù)的尾數(shù)為 0 時(shí)断楷,不論其階碼為何值锨匆,或者當(dāng)階碼的值遇到比它能表示的最小值還小時(shí),不管其尾數(shù)為何值冬筒,計(jì)算機(jī)都把該浮點(diǎn)數(shù)看成 0 值恐锣,稱為機(jī)器零*。

浮點(diǎn)數(shù)所表示的范圍比定點(diǎn)數(shù)大账千。假設(shè)機(jī)器中的數(shù)由 8 位二進(jìn)制數(shù)表示(包括符號(hào)位):在定點(diǎn)機(jī)中這 8 位全部用來(lái)表示有效數(shù)字(包括符號(hào))侥蒙;在浮點(diǎn)機(jī)中若階符、階碼占 3 位匀奏,尾符鞭衩、尾數(shù)占 5 位,在此情況下娃善,若只考慮正數(shù)值论衍,定點(diǎn)機(jī)小數(shù)表示的數(shù)的范圍是 0.0000000 到 0.1111111,相當(dāng)于十進(jìn)制數(shù)的 0 到 127/128聚磺,而浮點(diǎn)機(jī)所能表示的數(shù)的范圍則是 2 - 11×0.0001 到 211×0.1111坯台,相當(dāng)于十進(jìn)制數(shù)的 1/128 到 7.5 。顯然瘫寝,都用 8 位蜒蕾,浮點(diǎn)機(jī)能表示的數(shù)的范圍比定點(diǎn)機(jī)大得多。

盡管浮點(diǎn)表示能擴(kuò)大數(shù)據(jù)的表示范圍焕阿,但浮點(diǎn)機(jī)在運(yùn)算過(guò)程中咪啡,仍會(huì)出現(xiàn)溢出現(xiàn)象。下面以階碼占 3 位暮屡,尾數(shù)占 5 位(各包括 1 位符號(hào)位)為例撤摸,來(lái)討論這個(gè)問題。圖 2-1 給出了相應(yīng)的規(guī)格化浮點(diǎn)數(shù)的數(shù)值表示范圍褒纲。

規(guī)格化浮點(diǎn)數(shù)分布示意圖

圖 中准夷,“可表示的負(fù)數(shù)區(qū)域”和“可表示的正數(shù)區(qū)域”及“0”,是機(jī)器可表示的數(shù)據(jù)區(qū)域莺掠;上溢區(qū)是數(shù)據(jù)絕對(duì)值太大衫嵌,機(jī)器無(wú)法表示的區(qū)域;下溢區(qū)是數(shù)據(jù)絕對(duì)值太小彻秆,機(jī)器無(wú)法表示的區(qū)域渐扮。若運(yùn)算結(jié)果落在上溢區(qū)论悴,就產(chǎn)生了溢出錯(cuò)誤,使得結(jié)果不能被正確表示墓律,要停止機(jī)器運(yùn)行膀估,進(jìn)行溢出處理。若運(yùn)算結(jié)果落在下溢區(qū)耻讽,也不能正確表示之察纯,機(jī)器當(dāng) 0 處理,稱為機(jī)器零针肥。

一般來(lái)說(shuō)饼记,增加尾數(shù)的位數(shù),將增加可表示區(qū)域數(shù)據(jù)點(diǎn)的密度慰枕,從而提高了數(shù)據(jù)的精度具则;增加階碼的位數(shù),能增大可表示的數(shù)據(jù)區(qū)域具帮。

From Here.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末博肋,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子蜂厅,更是在濱河造成了極大的恐慌匪凡,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,914評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掘猿,死亡現(xiàn)場(chǎng)離奇詭異病游,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)稠通,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評(píng)論 2 383
  • 文/潘曉璐 我一進(jìn)店門衬衬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人改橘,你說(shuō)我怎么就攤上這事滋尉。” “怎么了唧龄?”我有些...
    開封第一講書人閱讀 156,531評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)奸远。 經(jīng)常有香客問我既棺,道長(zhǎng),這世上最難降的妖魔是什么懒叛? 我笑而不...
    開封第一講書人閱讀 56,309評(píng)論 1 282
  • 正文 為了忘掉前任丸冕,我火速辦了婚禮,結(jié)果婚禮上薛窥,老公的妹妹穿的比我還像新娘胖烛。我一直安慰自己眼姐,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,381評(píng)論 5 384
  • 文/花漫 我一把揭開白布佩番。 她就那樣靜靜地躺著众旗,像睡著了一般。 火紅的嫁衣襯著肌膚如雪趟畏。 梳的紋絲不亂的頭發(fā)上贡歧,一...
    開封第一講書人閱讀 49,730評(píng)論 1 289
  • 那天,我揣著相機(jī)與錄音赋秀,去河邊找鬼利朵。 笑死,一個(gè)胖子當(dāng)著我的面吹牛猎莲,可吹牛的內(nèi)容都是我干的绍弟。 我是一名探鬼主播,決...
    沈念sama閱讀 38,882評(píng)論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼著洼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼樟遣!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起郭脂,我...
    開封第一講書人閱讀 37,643評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤年碘,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后展鸡,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體屿衅,經(jīng)...
    沈念sama閱讀 44,095評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,448評(píng)論 2 325
  • 正文 我和宋清朗相戀三年莹弊,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了涤久。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,566評(píng)論 1 339
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡忍弛,死狀恐怖响迂,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情细疚,我是刑警寧澤蔗彤,帶...
    沈念sama閱讀 34,253評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站疯兼,受9級(jí)特大地震影響然遏,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜吧彪,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,829評(píng)論 3 312
  • 文/蒙蒙 一待侵、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧姨裸,春花似錦秧倾、人聲如沸怨酝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)农猬。三九已至,卻和暖如春胃榕,著一層夾襖步出監(jiān)牢的瞬間盛险,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工勋又, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留苦掘,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,248評(píng)論 2 360
  • 正文 我出身青樓楔壤,卻偏偏與公主長(zhǎng)得像鹤啡,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蹲嚣,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,440評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容