Python(六)位运算

位运算

 

>基础语法

与运算 &

或运算 |

异或运算 ^

取反运算 ~

右移运算 >>

左移运算 <<

>应用实例


>基础语法

  • 与运算 &

  • 按位与运算
  • 参加运算的两个值,如果相应位都为1,则该位的结果为1,否则为0
  • 或运算 |

  • 按位或运算
  • 只要对应的两个二进位有一个为1,则结果为1
  • 异或运算 ^

  • 按位异或运算
  • 对应的两个二进制位相异,结果为1
  • 取反运算 ~

  • ~a=-a-1
  • 按位取反运算
  • 对每个二进制位取反(即1变0,0变1),获取补码,算出原码(此原码即为~a的结果)
  • 补码第一位为1,原码为负,反之为正
  • 补码取反+1,获得原码
  • 右移运算 >>

  • a>>i    #a整除2^i
  • 把">>"左边的运算数的各二进位全部右移若干位,>> 右边的数字指定了移动的位数
  • 左移运算 <<

  • a<<i    #a乘以2^i
  • 运算数的各二进位全部左移若干位,由 << 右边的数字指定了移动的位数,高位丢弃,低位补0

>应用实例

#位运算
#author:xuer

print("a=8  b=7")
a=8 
b=7

#&与运算
print("a&b =",a&b)

#|或运算
print("a|b =",a|b)

#^异或运算
print("a^b =",a^b)  #不同为1

#~取反运算
print("~a =",~a)    #取反运算为-a-1

#>>右移运算
print("a>>1 =",a>>1)
print("a>>2 =",a>>2)
print("a>>3 =",a>>3) #a>>i,整除2^i

#<<左移运算
print("b<<1 =",b<<1)
print("b<<2 =",b<<2)
print("b<<3 =",b<<3) #b<<i,乘以2^i

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值