Q 格式定點數轉換
在浮點數與 Qm.n 定點數之間互相轉換,顯示補碼二進位制、十六進位制、量化誤差與可表示範圍。
常用佈局
轉換結果 Q1.15
16 bit- 定點整數(補碼)
- 23167
- 二進位制
- 0101101001111111
- 十六進位制
- 5A7F
- 可表示範圍
- -1 ~ 0.999969482421875
- 解析度
- 0.000030517578125
- 量化誤差
- 7.324e-7
- 浮點值
- 0.707000732421875
Qm.n 裡的 m 含符號位:Q1.15 是 16 位(1 符號 + 15 小數),取值範圍 -1 到 0.999969。另一種寫法把符號位單列,兩者差一位,用之前務必和硬體手冊對一下。
量化誤差 = 量化後的值 − 原值,絕對值不超過半個解析度。要減小誤差只能加小數位,代價是整數位變少、範圍縮小。
定點數在 MCU 與 DSP 上比浮點快得多:加減法直接對整數做,乘法後右移 n 位即可。代價是要自己盯著溢位。
評論
還沒有評論,來說兩句吧