通过按位与和按位或操作来拉高或者拉低某位的电平,用这两种运算可以让其他为的电平状态不受影响。
1.按位或 | 操作,可以实现拉高电平 0 -> 1,即对应位至少有一者为1运算结果为1,都为0才为0
将需拉高电平的低电平位0与1进行按位或操作,0 | 1 = 1即可拉高电平。如果原操作为也有为0的,为保证其电平不改变,其对应位应与0按位或,0 | 0 = 0,从而保持了原来的低电平状态不变。
例如:0001011 将第3位(从右往左数)的低电平拉高
0001011 | 0000100 = 00001111
由此第3位0 | 1 = 1,为使其他位不变皆与0做按位或运算
2.按位与&操作,可以实现拉低电平 1 -> 0,即对应位两者都为1运算结果为1,否则为0
将需拉低电平的高电平位1与0进行按位与操作,1 & 0 = 0即可拉高电平。如果原操作位也有为1的,为保证其电平不改变,其对应位应与1按位与,1 & 1= 1,从而保持了原来的高电平状态不变。
例如:0001111 将第3位(从右往左数)的高电平拉低
0001111 & 1111011 = 00001111
由此第3位1 & 0 = 0,为使其他位不变皆与1做按位与运算