一、逻辑与或非
二、按位与或反
例如:
uint8_t a = 0xAA, b = 0x55, c;
c = a & b = 0x00;
三、按位异或
四、左移与右移
//移位 >> << 流水灯
while(1)
{
P1 <<= 1; //1111 1110
Delay_ms(100);
P1 <<= 1; //1111 1100
Delay_ms(100);
P1 <<= 1; //1111 1000
Delay_ms(100);
P1 <<= 1; //1111 0000
Delay_ms(100);
P1 >>= 1; //0111 1000
Delay_ms(100);
P1 >>= 1; //0011 1100
Delay_ms(100);
P1 >>= 1; //0001 1110
Delay_ms(100);
P1 >>= 1; //0000 1111
Delay_ms(100);
}
五、运算优先级
括号可以改变优先级且优先级最高
从左向右进行逻辑运算,但凡能够计算结果了,后面的逻辑操作数是什么不用关心
六、深度剖析位运算
对比字符串,字符串是使用双引号括起来的字符序列(多个字符),而字符型是单引号括起来的单个字符