定點數


1、定點數定義

定點數是指小數點固定的隱含在某一位置上的一類數據

有符號數:

以四位有符號數1111為例,其數值大小為:1x(-2^(0))(4+2+1)= -7。

2、補碼

正整數的補碼:與原碼相同。

負整數的補碼:將其原碼除符號位外的所有位取反,之后加1。

3、定點純小數

定點純小數是指整數部分為0的定點小數,分為有符號定點純小數和無符號定點純小數,S為符號位,小數點在小數位的最左側。

對於字長為wf的無符號定點小數,其數值可表示為:

Bi表示對應的位為1,以四位無符號定點純小數1001為例:

其值為value=b0 x 2^(0-4) +b3 x 2^(3-4) =0.0625+0.5=0.5625

對於字長為wf+1的有符號定點純小數,其數值表示為:

同樣以1001為例,字長為4,wf=3,符號位為1,尾數位001,其值表示為:

value= (-1)^(1) + 2^(0-3) =-1+0.125 = -0.875

4、定點帶小數

即整數部分不為0的小數,分為有符號定點帶小數額無符號定點帶小數,S為符號位,定點數位寬為w,小數位位寬為wf:

對於無符號定點帶小數,正常計算即可,其計算公式為:

對於有符號定點帶小數,其計算公式為:

5、定點數據的上溢和下溢

上溢(overflow):運算結果超出了定點數的整數部分所能表示的范圍,

下溢(underflow):運算結果小數部分超出了小數部分能表示的范圍。

UFIX_4_2,表示無符號型定點小數,全長為4,小數部分寬度為2,所能表示的范圍為:[0,3.75],精度為0.25,如果運算結果為4,即發生上溢,如果運算結果為0.125,則發生下溢。

6、浮點數和定點數的比較

與定點數相比,采用浮點數進行算法描述:

(1)、具有更寬的動態范圍。

(2)、可縮短復雜運算的開發周期。

(3)、統一的標准數據格式。

劣勢:

(1)、浮點運算會消耗更多的查找表、寄存器和乘法器。

(2)、浮點運算會給布線資源帶來壓力,導致最大運行頻率降低。

通常在算法建模時采用浮點數,而在FPGA實現時采用定點數。


免責聲明!

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



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