先不卖关子,回答一下题目,为什么你必须要懂位运算?
那得首先解释一下什么是位运算,位运算就是对计算机内存储的二进制数据进行的运算。由于计算机内部都是用二进制来存储数据,所以位运算的速度是非常快的,甚至在大多数情况下都快于加减乘除法。
常用的运算符共 6 种,分别为与(&)
、或(|)
、异或(^)
、取反(~)
、左移(<和
右移(>>)
。本文就将介绍位运算的基础知识以及它们的应用。
常用运算符
1.与(&)
只有两个对应位都为 1 时结果才为 1
真值表
a | b | a&b |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
![1ad254231837d368dab1400fe02b6170.png](https://img-blog.csdnimg.cn/img_convert/1ad254231837d368dab1400fe02b6170.png)
2.或(|)
只要两个对应位中有一个 1 时结果就为 1
真值表
a | b | a|b |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
![d7248f5f2c38920785c5f9b1bbca0c05.png](https://img-blog.csdnimg.cn/img_convert/d7248f5f2c38920785c5f9b1bbca0c05.png)
3.亦或(^)
只有两个对应位不同时结果才为 1
真值表
a | b | a^b |
---|