按位與、或、異或等運算方法


1.按位與運算符(&)

  簡單來說就是,對應的二進制位有一個或者兩個為1,則該位的運算結果為1,否則為0.   如下:        1010

                                              10:1010           15:1111         就是 :  1010&1111       1111   上下結果:1111。

                                                  記住只要位運算上面有1    就要保留1   !                   

2.按位或運算符(|)

  對應的二進制位中必須都是1,則結果為1,否則為0.  簡單來說也就是:1*1=1,1*0=0.     如下:       1010                     

                                      10 :  1010         15  : 1111   就是 1010|1111                                                     1111     上下結果就是:1010

                               記住口訣就是  1*1=1   1*0=0              

3.按位異或運算符(^)

  

  對應的二進制位中必須都是1,則結果為1,否則為0.  簡單來說也就是:1*1=0,1*0=1.     如下:       1010                     

                               10 :  1010         15  : 1111   就是 1010^1111                                                     1111     上下結果就是:0101

                               記住口訣就是  1*1=0   1*0=1      和按位或運算正好相反        

4.取反運算符(~)

   將對應的二進制數逐位反轉,即1取反為0,0取反為1 。

  “~”取反運算符的級別高於位於運算符“&”。因此如果兩個運算符在一塊的話,先取反,再進行位於運算!

   還是拿10和15舉例子:10 : 1010      取反為  ~10 :0101 即  ~10=5;15 :1111 取反為 ~15 : 0000   即 0。

        5&~1等於        5  :0101              1  :1   取反為0       則5&~1=0100  即等於  4 

 

5.左移運算符(<<)

  我覺得概念沒有直接舉例子來的通俗易懂

                ………………1的二進制是 00000001       1<<2  后就是 00000100即4      1<<3就是00001000即8

                                                                                                         4<<2    就是00010000  即16

6.右移運算符(>>)

    和左移運算符相反    不過1>>2  就是00000000  即0!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM