解決了個困擾了2天的問題,定點運算問題
更新時間:2016年06月17日 10:07:23 作者:ganxingming
本文主要講解定點運算問題,需要的朋友可以參考一下。
分母變小了,相當于左移了
復制代碼 代碼如下:
a=1-b/c;
|b|<pow(2,23)
|c|=pow(2,26)
|b|<pow(2,23)
|c|=pow(2,26)
|a|<1
在運算個過程中,需要把該運算轉(zhuǎn)換成定點運算。
想了2天,都沒有想出怎么可以保證a的精度,因為a可能很小,如果簡單的
復制代碼 代碼如下:
a<<=8;
是無法保證a的精度的。
今天快要下班時,突然有靈機一動:
復制代碼 代碼如下:
c>>=6;
b<<=8;
a=1<<14-b/c; //相當于 a<<14,保證了a的精度
b<<=8;
a=1<<14-b/c; //相當于 a<<14,保證了a的精度
分子不能左移太多位,分母右移,解決問題了。
發(fā)散思維說起來很容易,做起來不容易呀!
以上就是本文的全部內(nèi)容,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
C++在成員函數(shù)中使用STL的find_if函數(shù)實例
這篇文章主要介紹了C++在成員函數(shù)中使用STL的find_if函數(shù)實例,包括了STL中find_if函數(shù)的具體用法及相關(guān)的完整實例,非常具有參考借鑒價值,需要的朋友可以參考下2014-10-10
如何基于 Blueprint 在游戲中創(chuàng)建實時音視頻功能
我們在本文先來講講如何在 Unreal 中用 Blueprint 快速實現(xiàn)。稍后會分享基于 C++的實現(xiàn)步驟。感興趣的朋友跟隨小編一起看看吧2020-05-05
udp socket客戶端和udp服務(wù)端程序示例分享
這篇文章主要介紹了udp socket客戶端和udp服務(wù)端程序示例,需要的朋友可以參考下2014-03-03

