C语言位运算
位运算
概述
位运算是一种高效率的运算工具
位运算是一种对二进制数进行操作的运算符,他的优先级仅次于
位运算包括,按位与(&)、按位或(|)、按位异或(^)、按位取反(~)、按位左移(<<)、按位右移(>>)
按位与(&)
按位与是上下比较两个都为1结果是1,有0结果为0;
例如:
1 | int a = 5; // 00000000 00000000 00000000 00000101 |
按位或(|)
与按位与刚好相反,按位与是上下比较两个都为0结果是0,有1结果为1.
1 | int a = 5; // 00000000 00000000 00000000 00000101 |
按位异或(^)
上下比较相同为0,不同为1.
1 | int a = 5; // 00000000 00000000 00000000 00000101 |
按位取反(~)
0变1,1变0
1 | int a = 5; |
按位左移(<<)
向左移一位,左边丢弃,右边补零
1 | int a = 5; |
按位右移(>>)
向右移一位,右边丢弃,右边补原符号位
1 | int a = 5; |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 HT的笔记の技术小站!