位运算取模演示
缓冲区大小选择
8 (2³)
16 (2⁴)
32 (2⁵)
64 (2⁶)
输入值 (index)
传统取模运算
17 % 8
1
位运算取模
17 & 7
1
二进制可视化
输入值
= 17
掩码值
= 7
结果
= 1
原理说明
缓冲区大小
8
掩码值 (size - 1)
7
二进制掩码
0b111
等价关系
index % size ≡ index & (size - 1)
适用条件:
缓冲区大小必须是 2 的幂次方 (2, 4, 8, 16, 32...)。
性能优势:
位运算比除法/取模运算快 3-10 倍。