位操作运算
置位/复位
- 要求:置位int/char等数据中第pos位为0或1
- 原理: 1 & 1 = 1 0 & 1 = 0 1 | 1 = 1 0 | 1 = 1-> A & 1 = A; A | 1= 1; 0 & 0 = 0; 1 & 0 = 0; 0 | 0 = 0; 1 | 0 = 1;-> A & 0 = 0; A | 0 = A;
- 结论 置1: 按位或1; 置0: 按位与0; 保持不变:与1/或0
- 示例: 置8bit数据data第3位(0~7): 置1:data | 00001000 置0:data & 11110111 00001000 = (0x01<<3) 11110111 = ~(0x01<<3)