计算机如何找到模数?

Nat*_*ate 8 assembly bit-manipulation modulo

是否有一些比特操作的酷算法?

Rei*_*ien 6

通常,处理器上的模数和除法运算是相同的.例如,请参阅http://jsimlo.sk/docs/cpu/index.php/div.html.这是英特尔处理器上除法指令的实现.


Mik*_*wis 5

大多数情况下,模数只是通过除以两个数来计算.商存储在一个寄存器中,余数存储在另一个寄存器中.你会追求其余的.


Tho*_*nin 5

如果预先知道除数(例如,对于 C 编译器生成的代码,这是在编译时已知的常数),则整数除法(从中可以轻松获得模数)有时可以通过乘法和移位来实现。有关详细信息,请参阅本文(警告:这不是轻松阅读)。

在许多处理器中,整数乘法比整数除法快得多;有些处理器甚至没有整数除法操作码(n位值的乘法可以优化为深度O(log n)的电路,而没有已知的方法来优化深度低于O(n)的除法电路)。