gpt4 book ai didi

c - 如何使用按位添加位?

转载 作者:太空宇宙 更新时间:2023-11-04 08:45:02 25 4
gpt4 key购买 nike

我试图弄清楚如何仅使用以下按位运算来添加位(最多 2 个字节):~ & ^ | <<>>。我已经尝试了一段时间但没有运气。我想知道是否有人知道怎么做。

int logicalByteAdd(int x, int y) {

return ;
}

最佳答案

unsigned short add(unsigned short a, unsigned short b)
{
unsigned short carry = a & b;
unsigned short result = a ^ b;
while(carry != 0)
{
unsigned short shiftedcarry = carry << 1;
carry = result & shiftedcarry;
result ^= shiftedcarry;
}
return result;
}

Proof of CorrectnessMooing Duck 提供

关于c - 如何使用按位添加位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22026777/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com