我想执行位操作,使 int input = 0xDEAD 变为 0xEDDA。我如何用 C 语言做到这一点?

问题描述 投票:0回答:1

我的输入是 int,预期输出必须是 int,我可以看到我们正在交换相邻位。

c bit-manipulation
1个回答
0
投票
int swapAdjacentFourBitGroups(int input)
{
    return ((input << 4) & 0xf0f0f0f0) | ((input >> 4) & 0x0f0f0f0f);
}
© www.soinside.com 2019 - 2024. All rights reserved.