位运算取模演示

缓冲区大小选择

8 (2³)
16 (2⁴)
32 (2⁵)
64 (2⁶)
传统取模运算
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 倍。