“与”运算、“或”运算、“异或”运算
其前后各接一数字,返回两数字之“与”运算(&)、“或”运算(|)、“异或”运算值( ^)。
先将两侧的数字转成二进制数,然后对各位进行与、或、异或操作。
如:
- 4&6的返回值是4,4转为00000100,6转为00000110各位相与得,00000100,为4。(相对应的两位,都为1时,结果才为1,任何一位为0,则结果为0。就像逻辑上的真假的&&操作一样,两位都为真时才为真,任何一位为假则结果为假。)
- 4|6的返回值是6,4转为00000100,6转为00000110各位相或得,00000110,为6。(相应对的两位有一位是1,则结果为1,两位都是0时,结果才为0。就像逻辑上的||操作一样,任何一位为真则为真。要想为假则必须两位都是假)
- 4^6的返回值是2,4转为00000100,6转为00000110各位相异或得,00000010,为2。(异或运算则综合了以上两种运算,两位相同则为0,两位不同则为1)
因为现代的电子计算机都是基于状态操作的,所以,使用二进制来表示不同的状态(特别是状态的种类很多时),可以提高效率。
了解更多信息可以参考:C++从零开始(http://blog.csdn.net/small_sea/article/category/538039/1),该教程的原作者不知道是哪位,有知道可以留言。