取模和与运算的一点关系

由来:


image.png

n/32 == n>>5 (2**5 == 32)

与n取模其实就是和n-1相与
n%32 == n & (32-1)
n%32 == n & (0x1f)

毕竟我们从理解的取模的意义上来理解,取模(NUM 对N取模)就是 看NUM除与N后的余数,可以从二进制的角度来理解,就会发现,其实就是在找NUM的log2(N)位是多少。

你可能感兴趣的:(取模和与运算的一点关系)