1. 浮點數表示:
f=m* r^e
m為尾數,e為階碼,r是基數(為2)
設階碼數值位e取k位;階符1位且採用補碼;尾數r的數值位取n位;數符1位且採用補碼;
階符(1位)
階碼e(k位)
數符(1位)
尾數m(n位)
都使用二進位制表示,例如:
f=11.0101=1.10101* 2^-10
2.浮點數所表示的數值範圍,分為規格化與非規格化:
非規格化:
階碼e的最小值為-2^k,最大值為2^k-1
規格化:
為了充分利用尾數的二進位制編碼表示更多的有效數字,為了使浮點保持更高的精度以及有統一的表示形式,對浮點數規格化,將尾數的絕對值限定在乙個規定的數值範圍內。
規格化的浮點數尾數的絕對值應在1/2~1之間。
尾數m使用補碼表示,當m>=0時,規格化尾數的形式必須為:m=0.1***x...x(1+n位)
當m<0時,規格化尾數的形式必須為:m=1.0***x...x(1+n位)
尾數的最小負值為-1,最大負值為-(1/2+2^-n)
尾數的最小正值為+1/2,尾數的最大正值為+(1-2^-n)
浮點數的表示
在定點數表示中存在的乙個問題是,難以表示數值很大的資料和數值很小的資料。例如,電子的質量 9 10 28克 和太陽的質量 2 1033克 相差甚遠,在定點計算機中無法直接表示,因為小數點只能固定在某乙個位置上,從而限制了資料的表示範圍。為了表示更大範圍的資料,數學上通常採用科學計數法,把資料表示成乙...
浮點數的表示
日期 2010年6月 6日 1.前幾天,我在讀一本c語言教材,有一道例題 includevoid main void 執行結果如下 num的值為 9 pfloat的值為 0.000000 num的值為 1091567616 pfloat的值為 9.000000 我很驚訝,num和 pfloat在記憶...
浮點數的表示
浮點數,是指小數點在資料中的位置可以左右移動的資料。它通常被表示成 n m re 這裡的m mantissa 被稱為浮點數的尾數,r radix 被稱為階碼的基數,e exponent 被稱為階的階碼。計算機中一般規定r為2 8或16 是乙個確定的常數,不需要在浮點數中明確表示出來。因此,要表示浮點...