浮點(diǎn)數(shù)的表示方法
浮點(diǎn)數(shù),是指小數(shù)點(diǎn)在數(shù)據(jù)中的位置可以左右移動(dòng)的數(shù)據(jù)。它通常被表示成:
N = M* RE
這里的M(Mantissa)被稱為浮點(diǎn)數(shù)的尾數(shù),R(Radix)被稱為階碼的基數(shù),E(Exponent)被稱為階的階碼。計(jì)算機(jī)中一般規(guī)定R為2、8或16、是一個(gè)確定的常數(shù),不需要在浮點(diǎn)數(shù)中明確表示出來。因此,要表示浮點(diǎn)數(shù),一是要給出尾數(shù)M的值,通常用定點(diǎn)小數(shù)形式表示,它決定了浮點(diǎn)數(shù)的表示精度,即可以給出的有效數(shù)字的位數(shù)。二是要給出階碼,通常用整數(shù)形式表示,它指出的是小數(shù)點(diǎn)在數(shù)據(jù)中的位置,決定了浮點(diǎn)數(shù)的表示范圍。浮點(diǎn)數(shù)也要有符號(hào)位。在計(jì)算機(jī)中,浮點(diǎn)數(shù)通常被表示成如下格式:

Ms是尾數(shù)的符號(hào)位,即浮點(diǎn)數(shù)的符號(hào)位,安排在最高一位;
E 是階碼,緊跟在符號(hào)位之后,占用m位,含階碼的一位符號(hào);
M 是尾數(shù),在低位部分,占用n位。
合理地選擇m和n的值是十分重要的,以便在總長度為1+m+n個(gè)二進(jìn)制表示的浮點(diǎn)數(shù)中,既保證有足夠大的數(shù)值范圍,又保證有所要求的數(shù)值精度。例如,在PDP-11/70計(jì)算機(jī)中,用32位表示的一個(gè)浮點(diǎn)數(shù),符號(hào)位占一位,階碼用8位,尾數(shù)用23位,數(shù)的表示范圍約為±1.7*10±38 ,精度約為10進(jìn)制的7位有效數(shù)字。
若不對(duì)浮點(diǎn)數(shù)的表示格式作出明確規(guī)定,同一個(gè)浮點(diǎn)數(shù)的表示就不是唯一的。例如0.5也可以表示為0.05×101 , 50×10-2 等。為了提高數(shù)據(jù)的表示精度,也為了便于浮點(diǎn)數(shù)之間的運(yùn)算與比較,規(guī)定計(jì)算機(jī)內(nèi)浮點(diǎn)數(shù)的尾數(shù)部分用純小數(shù)形式給出,而且當(dāng)尾數(shù)的值不為0時(shí),其絕對(duì)值應(yīng)大于或等于0.5,這被稱為浮點(diǎn)數(shù)的規(guī)格化表示。對(duì)不符合這一規(guī)定的浮點(diǎn)數(shù),要通過修改階碼并同時(shí)左右移尾數(shù)的辦法使其變成滿足這一要求的表示形式,這種操作被稱為的規(guī)格化處理,對(duì)浮點(diǎn)數(shù)的運(yùn)算結(jié)果就經(jīng)常需要進(jìn)行規(guī)格化處理。
當(dāng)一個(gè)浮點(diǎn)數(shù)的尾數(shù)為0,不論其階碼為何值,該浮點(diǎn)數(shù)的值都為0。當(dāng)階碼的值為它能表示的最小一個(gè)值或更小的值時(shí),不管其尾數(shù)為何值,計(jì)算機(jī)都把該浮點(diǎn)數(shù)看成零值,通常稱其為機(jī)器零,此時(shí)該浮點(diǎn)數(shù)的所有各位(包括階碼位和尾數(shù)位)都清為0值。
按國際電子電氣工程師協(xié)會(huì)的IEEE標(biāo)準(zhǔn),規(guī)定常用的浮點(diǎn)數(shù)的格式為:
符號(hào)位 階碼 尾數(shù) 總位數(shù)
短浮點(diǎn)數(shù) 1 8 23 32
長浮點(diǎn)數(shù) 1 11 52 64
臨時(shí)浮點(diǎn)數(shù) 1 15 64 80
對(duì)短浮點(diǎn)數(shù)和長浮點(diǎn)數(shù),當(dāng)其尾數(shù)不為0值時(shí),其最高一位必定為1,在將這樣的浮點(diǎn)數(shù)寫入內(nèi)存或磁盤時(shí),不必給出該位,可左移一位去掉它,這種處理技術(shù)稱為隱藏位技術(shù),目的是用同樣多位的尾數(shù)能多保存一位二進(jìn)制位。在將浮點(diǎn)數(shù)取回運(yùn)算器執(zhí)行運(yùn)算時(shí),再恢復(fù)該隱藏位的值。對(duì)臨時(shí)浮點(diǎn)數(shù),不使用隱藏位技術(shù)。
從上述討論可以看到,浮點(diǎn)數(shù)比定點(diǎn)小數(shù)和整數(shù)使用起來更方便。例如,可以用浮點(diǎn)數(shù)直接表示電子的質(zhì)量9×10-28 克,太陽的質(zhì)量2×1033 克,圓周率3.1416等。上述值都無法直接用定點(diǎn)小數(shù)或整數(shù)表示,要受數(shù)值范圍和表示格式各方面的限制。
浮點(diǎn)數(shù),是指小數(shù)點(diǎn)在數(shù)據(jù)中的位置可以左右移動(dòng)的數(shù)據(jù)。它通常被表示成:
N = M* RE
這里的M(Mantissa)被稱為浮點(diǎn)數(shù)的尾數(shù),R(Radix)被稱為階碼的基數(shù),E(Exponent)被稱為階的階碼。計(jì)算機(jī)中一般規(guī)定R為2、8或16、是一個(gè)確定的常數(shù),不需要在浮點(diǎn)數(shù)中明確表示出來。因此,要表示浮點(diǎn)數(shù),一是要給出尾數(shù)M的值,通常用定點(diǎn)小數(shù)形式表示,它決定了浮點(diǎn)數(shù)的表示精度,即可以給出的有效數(shù)字的位數(shù)。二是要給出階碼,通常用整數(shù)形式表示,它指出的是小數(shù)點(diǎn)在數(shù)據(jù)中的位置,決定了浮點(diǎn)數(shù)的表示范圍。浮點(diǎn)數(shù)也要有符號(hào)位。在計(jì)算機(jī)中,浮點(diǎn)數(shù)通常被表示成如下格式:

Ms是尾數(shù)的符號(hào)位,即浮點(diǎn)數(shù)的符號(hào)位,安排在最高一位;
E 是階碼,緊跟在符號(hào)位之后,占用m位,含階碼的一位符號(hào);
M 是尾數(shù),在低位部分,占用n位。
合理地選擇m和n的值是十分重要的,以便在總長度為1+m+n個(gè)二進(jìn)制表示的浮點(diǎn)數(shù)中,既保證有足夠大的數(shù)值范圍,又保證有所要求的數(shù)值精度。例如,在PDP-11/70計(jì)算機(jī)中,用32位表示的一個(gè)浮點(diǎn)數(shù),符號(hào)位占一位,階碼用8位,尾數(shù)用23位,數(shù)的表示范圍約為±1.7*10±38 ,精度約為10進(jìn)制的7位有效數(shù)字。
若不對(duì)浮點(diǎn)數(shù)的表示格式作出明確規(guī)定,同一個(gè)浮點(diǎn)數(shù)的表示就不是唯一的。例如0.5也可以表示為0.05×101 , 50×10-2 等。為了提高數(shù)據(jù)的表示精度,也為了便于浮點(diǎn)數(shù)之間的運(yùn)算與比較,規(guī)定計(jì)算機(jī)內(nèi)浮點(diǎn)數(shù)的尾數(shù)部分用純小數(shù)形式給出,而且當(dāng)尾數(shù)的值不為0時(shí),其絕對(duì)值應(yīng)大于或等于0.5,這被稱為浮點(diǎn)數(shù)的規(guī)格化表示。對(duì)不符合這一規(guī)定的浮點(diǎn)數(shù),要通過修改階碼并同時(shí)左右移尾數(shù)的辦法使其變成滿足這一要求的表示形式,這種操作被稱為的規(guī)格化處理,對(duì)浮點(diǎn)數(shù)的運(yùn)算結(jié)果就經(jīng)常需要進(jìn)行規(guī)格化處理。
當(dāng)一個(gè)浮點(diǎn)數(shù)的尾數(shù)為0,不論其階碼為何值,該浮點(diǎn)數(shù)的值都為0。當(dāng)階碼的值為它能表示的最小一個(gè)值或更小的值時(shí),不管其尾數(shù)為何值,計(jì)算機(jī)都把該浮點(diǎn)數(shù)看成零值,通常稱其為機(jī)器零,此時(shí)該浮點(diǎn)數(shù)的所有各位(包括階碼位和尾數(shù)位)都清為0值。
按國際電子電氣工程師協(xié)會(huì)的IEEE標(biāo)準(zhǔn),規(guī)定常用的浮點(diǎn)數(shù)的格式為:
符號(hào)位 階碼 尾數(shù) 總位數(shù)
短浮點(diǎn)數(shù) 1 8 23 32
長浮點(diǎn)數(shù) 1 11 52 64
臨時(shí)浮點(diǎn)數(shù) 1 15 64 80
對(duì)短浮點(diǎn)數(shù)和長浮點(diǎn)數(shù),當(dāng)其尾數(shù)不為0值時(shí),其最高一位必定為1,在將這樣的浮點(diǎn)數(shù)寫入內(nèi)存或磁盤時(shí),不必給出該位,可左移一位去掉它,這種處理技術(shù)稱為隱藏位技術(shù),目的是用同樣多位的尾數(shù)能多保存一位二進(jìn)制位。在將浮點(diǎn)數(shù)取回運(yùn)算器執(zhí)行運(yùn)算時(shí),再恢復(fù)該隱藏位的值。對(duì)臨時(shí)浮點(diǎn)數(shù),不使用隱藏位技術(shù)。
從上述討論可以看到,浮點(diǎn)數(shù)比定點(diǎn)小數(shù)和整數(shù)使用起來更方便。例如,可以用浮點(diǎn)數(shù)直接表示電子的質(zhì)量9×10-28 克,太陽的質(zhì)量2×1033 克,圓周率3.1416等。上述值都無法直接用定點(diǎn)小數(shù)或整數(shù)表示,要受數(shù)值范圍和表示格式各方面的限制。
電子發(fā)燒友App
























評(píng)論