-2

可能重复:
如何在 C 中设置、清除和切换单个位?

我想创建一个汇编程序,所以我需要逐位或逐字段分配 32 位以从汇编中创建 32 位操作码......我怎样才能在 C 中做到这一点?如何分配整数位?这可以做到吗?

4

1 回答 1

2

您可以声明这两个宏来帮助您:

#define Set_Bit(IntValue, BitNumber) IntValue = IntValue | (1<<BitNumber)
#define Clr_Bit(IntValue, BitNumber) IntValue = IntValue & (~((1) << (BitNumber))))

一些问题之前已经讨论过: 设置和清除位的宏

于 2012-08-31T00:01:00.937 回答