java 中float和double型別資料取值詳解
阿新 • • 發佈:2019-02-15
1、定義標準 IEEE754
2、儲存結構在IEEE754標準中進行了單精度浮點數(float)和雙精度數浮點數(double)的定義。
float有32bit,double有64bit。它們的構成包括符號位、指數位和尾數位。
float: 1bit(符號位)+8bit(指數位)+23bit(尾數位) double:1bit(符號位)+11bit(指數位)+23bit(尾數位)
這些位的構成如下
種類-------符號位-------------指數位----------------尾數位----
float---第31位(佔1bit)---第30-23位(佔8bit)----第22-0位(佔23bit)
3、取值範圍定義
取值範圍主要看指數部分:
float的指數部分有8bit(2^8),由於是有符號型,所以得到對應的指數範圍-128~128。
double的指數部分有11bit(2^11),由於是有符號型,所以得到對應的指數範圍-1024~1024。
4、取值
float型別: -2^128到 2^128
double型別:-2^1024 到2^1024