C语言位运算运算符含义运算符含义&按位逻辑与运算符~按位取反运算符|按位逻辑或运算符>>右移运算符^安慰逻辑异或运算符<<右移运算符例:定义a =0b10101010;b=0b11111111;a & b = 0b10101010;a|b= 0b11111111;~a = 0b01010101;&运算符1 & ? = ?0 & ? = 0|运算符1 | ? = 10 | ? = ?&可以用来使某一位清零如DDRA&=~(1<<3);解释:1<<3 = 0b00001000;~(1<<3) = 0b11110111;DDRA=0bxxxxxxxx~(1<<3)=0b11110111;进行&运算后DDRA= 0bxxxx0xxx;|运算可以使某一位置一如DDRA|= 1<<3;思考一下是为什么。&还可以用来判断某一位是否为1如a = PINA& (1<<3);如果PINA的第三位为1 则a为逻辑真(非0)如果PINA的第三位为0 则a为逻辑假(0)
C语言位运算 来自淘豆网m.daumloan.com转载请标明出处.