位运算符与运算符的优先级

     按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0      

          1 & 1 == 1
          1 & 0 == 0
          0 & 1 == 0
          0 & 0 == 0   

         a=9

         b=13

         (a & b) 输出结果 9 ,二进制解释:9的二进制是1001,13的二进制是:1101  结果:0000 1001

|        按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。        

        1 | 1 == 1
        1 | 0 == 1
        0 | 1 == 1
        0 | 0 == 0

         a=9

         b=13

       (a | b) 输出结果 13 ,二进制解释:9的二进制是1001,13的二进制是:1101  结果:0000 1101

~        按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1

          ~ 1 == 0
          ~ 0 == 1  

          a=9      

         (~a ) 输出结果 6,二进制解释: 9的二进制是1001   结果:0000 0110,在一 个有符号二进制数的补码形式。

^        按位异或运算符:当两对应的二进位相异时,结果为1    

         1 ^ 1 == 0
         0 ^ 0 == 0
         1 ^ 0 == 1
         0 ^ 1 == 1  

          a=9

          b=13

          (a ^ b) 输出结果 4 ,二进制解释: 9的二进制是1001,13的二进制是:1101  结果为 0000 0100

<<        左移动运算符:运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。

            a=9     

            a << 2 输出结果 36 ,二进制解释:9的二进制是1001   结果为  0010 0100

>>        右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数  

                  a=9 

             a >> 2 输出结果 2 ,二进制 解释:9的二进制是1001  结果为: 0000 0010

运算符的优先级

**        指数 (最高优先级) ~ + -      按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)

* / % //   乘,除,aa取模和取整除

+ -        加法减法 >> <<      右移,左移运算符

&           位 'AND'

^ |        位运算符

<= < > >=   比较运算符

<> == !=    等于运算符

= %= /= //= -= += *= **=        赋值运算符

is is not        身份运算符

in not in        成员运算符

not or and      逻辑运算符 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

任错错

如果对您有帮助我很开心

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值