码迷,mamicode.com
首页 > 其他好文 > 详细

位运算符

时间:2014-07-16 21:01:48      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:amp   二进制   移动   位运算   运算符   规律   

<< 左移  其实就是乘以2的移动位数次幂      

  3 << 2 = 12 ‐‐> 3*2*2=12

  0000-0000 0000-0000 0000-0000 0000-0011

  向左移动两位,移动后往后面补上两个0,结果为0000-0000 0000-0000 0000-0000 0000-1100------>12,越移越大

 

>>   右移  其实就是除以2的移动位数次幂    

  3 >> 1 = 1 ‐‐> 3/2=1

  0000-0000 0000-0000 0000-0000 0000-0011

  向右移动一位,移动后往前面补上一个0(如果最高位是1,就拿1补),结果为0000-0000 0000-0000 0000-0000 0000-0001------->1,越移越小

 

>>>   无符号右移

  3 >>> 1 = 1 ‐‐> 3/2=1

  无论最高位是什么都拿0补。

 

&   与运算

  6 & 3 = 2

   110
     &011
     ---------
      010 = 2
    (运算规律:把0当做是假,把1当做是真)

 

|   或运算    

   6 | 3 = 7

      110
     |011
    -----------
      111 = 7

 

^   异或运算  

  6 ^ 3 = 5

       110
     ^011
    ----------
       101 = 5

 

~     反码       ~6 = ‐7

 

注:位运算是直接对二进制进行运算。

最有效的运算出2*8等于几---------->2<<3

位运算符,布布扣,bubuko.com

位运算符

标签:amp   二进制   移动   位运算   运算符   规律   

原文地址:http://www.cnblogs.com/LO-ME/p/3530543.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!