浮點數(shù),是屬于有理數(shù)中某特定子集的數(shù)的數(shù)字表示,在計算機中用以近似表示任意某個實數(shù)。具體的說,這個實數(shù)由一個整數(shù)或定點數(shù)(即尾數(shù))乘以某個基數(shù)(計算機中通常是2)的整數(shù)次冪得到,這種表示方法類似于基數(shù)為10的科學計數(shù)法。
1 、浮點數(shù)基礎(chǔ)知識

浮點數(shù)由四部分構(gòu)成:符號位(Sign Bit)、尾數(shù)(Mantissa)、基數(shù)(Radix)和指數(shù)(Exponent)。根據(jù)《IEEE Standard 754 for Binary Floating-Point Arithmetic》的定義–二進制標準浮點數(shù),基數(shù)為2。s、m、e分別為符號數(shù)、尾數(shù)和指數(shù),n為相應(yīng)的浮點數(shù)值。

IEEE-754規(guī)定了三種浮點數(shù):單精度(float)、雙精度(double)和擴展精度。
其中單精度為32bit,其中包含1位符號位S,8位指數(shù)位E和23位尾數(shù)位M。S、E、M為相應(yīng)的二進制序列。

S:
正數(shù) 0.1xxxxxx
負數(shù) 1.1xxxxxx
M:
表示小數(shù)點之后的二進制尾數(shù)。
M為0110表示:二進制.0110
E:
規(guī)格化(normalized)
非規(guī)格化(denormalized)
2 、規(guī)格化浮點數(shù)
E表示的二進制不全為0也不全為1時該浮點數(shù)為規(guī)格化浮點數(shù)。

e表示偏置(Biased)
|E|表示E的二進制整數(shù)
bias表示偏置
k為指數(shù)位寬
對于單精度浮點數(shù)來說k為8,所以bias為127。E=“10001000”為例,|E|=136,故e為9。
對于規(guī)格化浮點數(shù),標準規(guī)定尾數(shù)位小數(shù)點左側(cè)的隱含位為1,所以:
m = |1.M|
例如M=“10010…0”則1.M=“1.10010…0”所以m=1.5625

s=0
m = 1.5625
e =9
n =55.5112
單精度浮點數(shù)的公式可表示為:

3、非規(guī)格化浮點數(shù)
E的二進制位全為0時該浮點數(shù)為非規(guī)格化浮點數(shù)。
bias=127

單精度非規(guī)格化浮點數(shù)公式:

-0.0 符號位為1,其余位為0.
+0.0全部為0.
4、特殊數(shù)值
E的二進制位全為1時為特殊數(shù)值。
M全0,n無窮大
M全1,S為1,n負無窮大
M全1,S為0,n正無窮大
M不全為0和1,n NaN(Not a Number)

5 、雙精度浮點數(shù)
IEEE-754定義雙精度浮點數(shù)共64bit 。1位符號位S,11位指數(shù)位E和52位尾數(shù)位M。同樣可以劃分為規(guī)格化、非規(guī)格化和特殊數(shù)值。


-
計算機
+關(guān)注
關(guān)注
19文章
7810瀏覽量
93236 -
浮點數(shù)
+關(guān)注
關(guān)注
0文章
62瀏覽量
16421
發(fā)布評論請先 登錄
TMS320C6712D浮點數(shù)字信號處理器:高性能與靈活性的完美結(jié)合
SMJ320C6701浮點數(shù)字信號處理器:高性能與多領(lǐng)域應(yīng)用的完美結(jié)合
TMS320C6701浮點數(shù)字信號處理器:技術(shù)剖析與應(yīng)用指南
TMS320C6713B浮點數(shù)字信號處理器:特性、配置與應(yīng)用全解析
TMS320C6711D浮點數(shù)字信號處理器:高性能與靈活性的完美結(jié)合
使用VScode的PIO開發(fā)GD32VF103,但是串口無法打印浮點數(shù)怎么解決?
定點數(shù)表示實數(shù)的方法以及定點數(shù)在硬件上的運算驗證
E203添加浮點數(shù)方法:譯碼和派遣模塊設(shè)計
E203添加浮點數(shù)方法:FPU控制邏輯
浮點數(shù)是如何實現(xiàn)開平方運算的
浮點數(shù)指令添加——長指令寫回仲裁
risc-v中浮點運算單元的使用及其設(shè)計考慮
大彩講堂:VisualHMI-LUA教程-獲取設(shè)置單精度浮點數(shù)函數(shù)的應(yīng)用
浮點數(shù)基礎(chǔ)知識科普
評論