通过计算和存储反转快速整数除法?

时间:2012-06-27 20:31:57

标签: c# division inverse

根据我的理解,当前进行整数除法的方法是计算硬件中的逆,然后执行乘法。

我有一些C#代码,其中大量时间用于整数除法,其值很少变化,以至于它们的值可以缓存。

我想在软件中执行硬件算法,即计算除数的倒数并将所有这些除法转换为乘法。有没有人知道执行这种转换的算法,或者甚至更好,CLR中是否有可以自动执行此操作的内容?

1 个答案:

答案 0 :(得分:4)

有一个很棒的blog post series on the topic of integer division by multiplication。它确实包含了自己实现转换所需的一切。