首页 > 解决方案 > 打开和关闭位的最优雅方式

问题描述

我有一个寄存器,它可以是 0x02 或 0x01(0010 或 0001)。在单个操作中设置位的最优雅方法是什么?例如,如果寄存器当前为 0x02,我需要关闭第 2 位并打开第 1 位。

非常感谢

标签: c

解决方案


x ^= 3将 1 更改为 2 并将 2 更改为 1。^执行异或 (XOR) 操作。


推荐阅读