人民邮电出版3 5.1按位操作 52条件运算操作符“?” 653逗号(,)、方括号和圆括号()操作符 54复合赋值运算符
人民邮电出版社 5.1 按位操作 5.2 条件运算操作符“?” 5.3 逗号(,)、方括号[ ]和圆括号( )操作符 5.4 复合赋值运算符
人民邮电出版3 51按位操作 5.11^按位操作符 按位操作是对数据以二进制位为单位(bit) 进行运算。参加运算的操作数必须是char、int和 long数据类型的变量或常量。显然,不能对foa 冷 Me double、vod或其它复杂数据类型的数据进行位运 算。表5.1.1列出了所有的位操作的功能及其操作 符
人民邮电出版社 5.1 按位操作 5.1.1 按位操作符 按位操作是对数据以二进制位为单位(bit) 进行运算。参加运算的操作数必须是char、int和 long数据类型的变量或常量。显然,不能对float、 double、void或其它复杂数据类型的数据进行位运 算。表5.1.1列出了所有的位操作的功能及其操作 符
人民邮电出版3 表5.1.1 操作符 操作功能 按位求反 & 按位与 按位或 按位异或 按位右移 << 按位左移
人民邮电出版社 表5.1.1 操作符 操作功能 ~ 按位求反 & 按位与 | 按位或 ^ 按位异或 >> 按位右移 << 按位左移 表5.1.1
人民邮电出版3 1.按位逻辑运算 表5.12给出前4种逻辑运算的真值表 表512 p p o&g paq plq 0 0 0 0 0 0 0 0
人民邮电出版社 1. 按位逻辑运算 表5.1.2给出前4种逻辑运算的真值表。 p q ~p p&q p|q p^q 0 0 1 0 0 0 0 1 1 0 1 1 1 0 0 0 1 1 1 1 0 1 1 0 表5.1.2
人民邮电出版3 2移位操作 右移和左移语句的一般格式为: variable > number of bit: variable < number of bit 其中 variable是被移位操作的变量 8 number of bit是移位的位数
人民邮电出版社 2. 移位操作 右移和左移语句的一般格式为: variable >> number_of_bit; variable << number_of_bit; 其中variable是被移位操作的变量; number_of_bit是移位的位数
人民邮电出版3 512位操作的优先级 位操作中以求反优先级最高,并优先于算术运 算和关系运算。移位操作的优先级排在算术之后 关系运算之前。 三个其它位操作的优先级,按由高到低依次为 “与”、“或”和“异或”,并且低于关系运算 ∞求反操作遵守从右至左的结合规则,其它位操 作均遵守从左至右的结合规则。上述优先级关系示 g人于表5.1.3
人民邮电出版社 5.1.2 位操作的优先级 位操作中以求反优先级最高,并优先于算术运 算和关系运算。移位操作的优先级排在算术之后, 关系运算之前。 三个其它位操作的优先级,按由高到低依次为 “与” 、 “或”和“异或” ,并且低于关系运算。 求反操作遵守从右至左的结合规则,其它位操 作均遵守从左至右的结合规则。上述优先级关系示 于表5.1.3
人民邮电出版 表51.3 操作 操作符 结合规则 求反 (与!,+,-等同级) (算术运算) 左移和右移 > (关系运算) 与 & 异或 或
人民邮电出版社 操 作 操作符 结合规则 求反 ~(与!,++,--等同级) ← (算术运算) → 左移和右移 > (关系运算) 与 & → 异或 ^ → 或 | → 表5.1.3