要實現0到1之間的實數,通常使用ANSI浮點數或雙精度數。但是,0到1之間的固定精度數字(小數模1)可以有效地實現爲32位整數或16位字,它們與普通整數/字一樣添加,但會乘以「錯誤的方式」,這意味着當您乘以X次是的,你保留產品的高階位。這相當於乘以0.X和0.Y,其中X的所有位都在小數點後面。同樣,-1和1之間的帶符號數字也可以通過一個額外的位和一個移位來實現。裝配中的純高位乘法?
如何在C中實現固定精度的mod 1或mod 2(特別是使用MMX或SSE)? 我認爲這種表示方法可以用於酉矩陣的高效表示,用於數值密集的物理模擬。它使更多的MMX/SSE具有整數量,但您需要更高級別的PMULHW訪問權限。
非常感謝。 –