位运算符及运算顺序

位逻辑与(&) 逻辑(|)
这个 和 and or之间的区别在于运算对象,and or 是整体直接运算,但是位逻辑与& 或|是将左右两个数字转换为二进制,然后每位按照规则(& 或者 |)进行运算。
左移位<< 右移位>>
譬如 4<<2
即为将数字4转换为2进制表示方式,然后整体向左移动两位,高位溢出丢失,低位不够补0 (相当于乘以2)
类推 4>>2
将数字4的二进制表示方式整体向右移动2位,低位截断,高位补0(相当于除以2)

运算顺序
算数运算→位运算→比较运算→布尔运算→赋值运算

# 练习者  :可乐
# 文件名字:Bit_Operation
# 练习时间:2021/10/10 --22:03
#重点:按位 &(与)  |(或)
# 运算法则:将左右两边数字转换为二进制,然后进行同位与或非计算

#与(&)
print(4&8)
#0 0 0 0 0 1 0 0      数值4
#0 0 0 0 1 0 0 0      数值8
#0 0 0 0 0 0 0 0      按位与运算,都为1才为1,否则为0,得出数值为0#

print(4|8)
#0 0 0 0 0 1 0 0      数值4
#0 0 0 0 1 0 0 0      数值8
#0 0 0 0 1 1 0 0      按位或运算,有1就得出1,否则为0,得出数值为12#

#<<  左移位  高位溢出,低位补0#
print(4<<1)
#  0 0 0 0 0 1 0 0    数值4
#  0 0 0 0 1 0 0 0     数值8
#  将数值4二进制整体左移,高位第一位溢出丢失,低位补数字0
#  相当于乘以2

#>> 右移位 高位补0,低位截断
print(4>>1)
#  0 0 0 0 0 1 0 0    数值4
#  0 0 0 0 0 0 1 0     数值2
#  将数值 4的二进制整体右移1位,高位补0,低位截断
# 右移1位,相当于除以2,移动2位,相当于除以4


'''
运算顺序:算数运算→位运算→比较运算→布尔运算→赋值运算
①算术运算符:先幂,后乘除,最后加减
②位运算
③比较运算
④布尔运算
⑤赋值运算
'''

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值