定点c程序之一:定标
生活随笔
收集整理的這篇文章主要介紹了
定点c程序之一:定标
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
定點DSP把所有數據都當作整數來處理
ü在定點DSP芯片中,數字運算都是基于整形數的運算,也即所有操作數都用整形數表示。運算精度取決于整形數的字長,一般定點DSP的字長為16、24、或32。 ü定點數用2的補碼表示,16比特定點數表示的數值范圍-32768~32767 ü如1111111111111100b = -4 ü定點DSP如何處理小數/分數? ü數的定標:設定小數點在16位整形數的適當位置,小數點前面部分表示數的整數部分;小數點后面部分表示小數部分。當小數點處于不同位置時,所能表示的數字的范圍不同,因此,要根據信號變量的取值范圍來對數進行定標,選取合適的小數點位置。
數的定標有Q表示法和S表示法
?
定點數的數值計算方法 0000010.001010000 = 21+2-3+2-5=2+0.125+0.03125=2.15625 1111010.100000000 = -0000101.011111111+1? ? =-0000101.100000000=-5.5
定點數的范圍和精度 不同的Q值表示的數字范圍不同,Q值越大,表示的數的范圍越小,同時精度越大; 反之,Q值越小,表示的數的范圍越大,數的精度越小. Q15的表示的范圍是-1~0.9999695,精度為1/32768; Q0表示的范圍是-32768~32767,精度為1定點數的精度和范圍是一對矛盾,程序員應該準確估計變量的動態范圍,然后進行適當的定標,使數字表示既不會溢出,又能達到最高的精度.
定點數和浮點數的轉換 浮點數(x)轉換為定點數(xq):xq=(int)x * 2Q 定點數(xq)轉換為浮點數(x):x=(float)xq * 2-Q?
轉載于:https://www.cnblogs.com/c6000/archive/2010/08/19/1802925.html
總結
以上是生活随笔為你收集整理的定点c程序之一:定标的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 设计模式研究(二)-Singleton
- 下一篇: 告诉大家一个------无敌命令