我不完全理解这种计算奇偶校验位的算法.有人可以详细解释一下吗?
以下代码取自"Hacker's Delight"一书:
int parity(unsigned x) {
unsigned y;
y = x ^ (x >> 1);
y = y ^ (y >> 2);
y = y ^ (y >> 4);
y = y ^ (y >> 8);
y = y ^ (y >>16);
return y & 1;
}
Run Code Online (Sandbox Code Playgroud)