除数不是2的幂资源就占用很大

2019-03-25 09:18发布

如题,我想除833333,直接除的话占用大概1000多逻辑单元,如果是除1048576(2的20次幂)则资源占用很少,但这样精度不够,应该怎么解决? 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
mr.king
1楼-- · 2019-03-25 17:29
< / 再移动32位,不过你这样是小数了吧?不好,应该扩大位整数
eeleader
2楼-- · 2019-03-25 18:22

你的意思就是直接除占用资源太多,用2多少次幂精度又觉得不够。其实

还用下面的方法:

  用2的多少次幂倒数无限接近 1/833333

用2的20次幂 1048576/833333=1.2582917033166813266725306690123=(1+1/4+1/128)=1.2578125

 

误差:(1.2582917-1.2578125)/1.2582917=0.038%

 

当然觉得误差太高,还可以继续提高!

 

这样资源又少,精度又好,你看可行否!

一周热门 更多>