按位模数计算

时间:2011-08-15 12:59:01

标签: algorithm bit-manipulation modulus

给出两个数字a和b,其中b的形式为2 k ,其中k是未知的。使用按位运算符计算%b的有效方法。

1 个答案:

答案 0 :(得分:4)

a AND(b-1)== a%b(当b为2 ^ k时)

ex. a = 11 (1011b), b = 4 (0100b)
11 / 4 = 2 R3
11 % 4 == 11 AND (4-1)
11 (1011b) AND 3 (0011b) == 3 (0011b)