位运算符
发布时间:2016/7/13 20:28:48 访问次数:540
汇编语言对位的处理能力是很强的,但是C51语言也能对运算对象进行按位操作, HAT1072H从而使C51语言也具有对硬件直接进行操作的能力。位运算符的作用是按位对变量进行运算,但是并不改变参与运算和变量的值。C51中共有6种位运算符。
& 按位与 |按位或 ^按位异或 ~按位取反 <<位左移 >>位右移位运算一般的表达形式为:
变量l位运算符变量2
位运算符的优先级:6种位运算的优先级从高到低依次是:~(按位取反)→<((左移)→))(右移)→&(按位与)→^(按位异或)→|(按位或)。
除了按位取反运算符以外,以上位操作运算符都是双目运算符,位运算符对象只能是整型或字符型数据,不能为实型数据。
c=a&b: c=0x01
c=ab: c=Oxff
c=a^b: c=0xfc
c=~a: c=Ox00
汇编语言对位的处理能力是很强的,但是C51语言也能对运算对象进行按位操作, HAT1072H从而使C51语言也具有对硬件直接进行操作的能力。位运算符的作用是按位对变量进行运算,但是并不改变参与运算和变量的值。C51中共有6种位运算符。
& 按位与 |按位或 ^按位异或 ~按位取反 <<位左移 >>位右移位运算一般的表达形式为:
变量l位运算符变量2
位运算符的优先级:6种位运算的优先级从高到低依次是:~(按位取反)→<((左移)→))(右移)→&(按位与)→^(按位异或)→|(按位或)。
除了按位取反运算符以外,以上位操作运算符都是双目运算符,位运算符对象只能是整型或字符型数据,不能为实型数据。
c=a&b: c=0x01
c=ab: c=Oxff
c=a^b: c=0xfc
c=~a: c=Ox00