在一个字节中设置特定位

时间:2013-02-20 17:53:35

标签: c

我的二进制值等于1 110 11我需要将突出显示的位设置为0 101 00,我需要一个结果值为1 101 < / strong> 11.如何设置这些位并保持静止不变。

2 个答案:

答案 0 :(得分:3)

这应该有助于http://en.wikipedia.org/wiki/Bitwise_operations_in_C

如果您需要工作示例,请告诉我,但我鼓励您自己解决。

答案 1 :(得分:0)

unsigned char my_byte = 0x3B; // 0b00111011

// clear the bits
my_byte &= 0xE3;

// set the bits
my_byte |= 0x14;

你会发现很多人对如何写0xE3和0x14有很多不同的偏好。有些人喜欢移位,但最终这是应该生成的代码。