课程信息
课程名称:物联网/嵌入式工程师
章节名:位运算符和赋值复合运算符
课程内容概述
1. 位运算符
1.1 位运算符
& 按位与,规则:都1则1, 1零则0
| 按位或, 规则:-1则1, 都0则0
^ 按位异或,规则:相同为0, 不同为1
~ 按位取反,规则:1变成0, 0变成1
<< 左移,规则:高位丢弃,低位补0
>> 右移,规则:向右移动,低位丢弃,高位正数补0,负数补1
1.2 特殊提示
注意:
(1)左移的时候,等价于将这个数据乘以2的n(移动的位)次方
(2)右移的时候,等价于将这个数据除以2的n(移动的位)次方
2. 赋值复合运算符
2.1 赋值复合运算符
+= 加法赋值复合运算符 a+=b 等价于 a = a + b
-= 减法赋值复合运算符 a-=b 等价于 a = a - b
*= 乘法赋值复合运算符 a*=b 等价于 a = a * b
/= 除法赋值复合运算符 a/=b 等价于 a = a / b
%= 求余赋值复合运算符 a%=b 等价于 a = a % b
&= 位与赋值复合运算符 a&=b 等价于 a = a & b
|= 位或赋值复合运算符 a|=b 等价于 a = a | b
^= 位异或赋值复合运算符 a^=b 等价于 a = a ^ b
>>= 位右移赋值复合运算符 a>>=b 等价于 a = a >> b
<<= 位左移赋值复合运算符 a<<=b 等价于 a = a << b
2.2 赋值复合运算符代码示例
学习心得
位运算符和赋值复合运算符也掌握了,位运算的操作速度比较快,比如如何快速将一个数字扩大2的n次方倍,通过位运算效率是比较高的,再比如不通过第三个数,交换两个数的值通过^运算即可完成,扎实而灵活的掌握基本功,有时会有意想不到的效果。