位运算

Posted 刘靖凯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了位运算相关的知识,希望对你有一定的参考价值。

   位操作符就是对数据按二进制位进行运算的操作符。

  • &     与
  • |      或
  • ^     异或
  • ~     求补
  • <<   左移
  • >>   右移

   


                           

                              &     与运算

  例:

           2的二进制表示:  00000010

              10的二进制表示:00001010                              与遇0为0

              与运算的结果:    00001010

               所以,2&10的结果为2。

 

 


                           

                              |   或运算

   例:

          2的二进制表示:  00000010

             10的二进制表示:00001010                              或遇1为1

              与运算的结果:    00001010

               所以,2&10的结果为10。

 


 

    

                               ^     异或

  例:

          2的二进制表示:  00000010

             10的二进制表示:00001010                              异或同为0

             与运算的结果:    00001000

             所以,2&10的结果为8。

 

 


 

 

                                    ~     求补

  例:

         10的二进制表示:00001010                            求补全反转
         求补运算的结果: 11110101

 

 


 

 

                                 <<   左移      >>   右移

    例:

           10的二进制表示:00001010,

               左移一位为00010100(20),                          移位最麻烦

               左移两位为00101000(40)。                  除头尾补零 

 

以上是关于位运算的主要内容,如果未能解决你的问题,请参考以下文章

位运算和enum中的位运算

Java位运算:位异或运算位与运算位或运算位取反运算左位移运算右位移运算无符号右移运算不用额外变量交换两个整数的值(使用位异或运算)只出现一次的数字

Java位运算:位异或运算位与运算位或运算位取反运算左位移运算右位移运算无符号右移运算不用额外变量交换两个整数的值(使用位异或运算)只出现一次的数字

位运算

位运算计算与位运算应用

Python 基础1 - 位运算符