可能重复:
为什么需要模运算符?
我需要帮助了解如何&
给出模数?我正在分配使用内存访问时间来确定缓存大小。目前,对于 L3 大小,我得到了奇怪的结果。我认为这与&
仅适用于 2 的幂或类似的东西有关吗?所以我想了解它实际上是如何工作的
lengthMod = 1024/sizeof(int) - 1;
for (unsigned int k = 0; k < REPS; k++) {
data[(k * 16) & lengthMod]++;
}
会&
一直工作吗?还是它只适用于某些值?其他值实际上会发生什么?