定點數與浮點數


計算機中的定點數與浮點數

在計算機中,數據有兩種表達方式:定點數和浮點數,注意,這僅僅是數的兩種表達方式,而不是兩種數

 

定點數:小數點固定在某個位置上的數據,就是一般的寫法。 就好像 0.0000001 ,0.0001111;

浮點數:小數點位置可以浮動的數據。就像數學中的 1222.2*10^3也可以表示為1.2222*10^6;

 

定點數無須贅述,接下來說明一下浮點數:

浮點數數學表達方式:N=M*R^E

M(mantissa) 尾數

R 階的基數,即底數,就像上面的10,通常是一個常數,在計算機中一般為2、8、16,注意在一台計算機里,所有數據中的R是確定且相同的

E(exponent) 階碼

 

計算機表達方式

 

Ms是尾數符號位,被設置到最高位上,為0或1,Ms與M組成一個定點小數

E是階碼,注意它也有符號位,所以用n+1(1為符號位)表示

例如:

單精度浮點數(32位),階碼8位,尾數24位

雙精度浮點數(64位),階碼11位,尾數53位

 

--------------------------------------------------------

 

mysql中的定點數與浮點數

定點數:DECIMAL(P,D),同Numeric(P,D)

浮點數:FLOAT、DOUBLE

 

mysql中的浮點數無須贅述,接下來說一下定點數:

P:有效數字數的精度,范圍為1〜65

D:小數點后的位數,范圍是0~30。MySQL要求D小於或等於(<=)P

即可以存儲D位小數的P位數

備注:浮點數其實也能用(P,D)的方式表達,但這是不被推薦的

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM