先导知识
4和8 相与 (按位相“与”):
需要将写成二进制0和1表示的形式。
当且仅当都为1时,相与 才为1。
(下面的 “代码” 也进行了验证~)
4|8 按位或:
仅当 对应数位为0 时结果才为0,否则是1。。。。
(同时代码也验证了。。)
移位操作:
在此基础上,继续移位看看:
右移位:
在此基础上继续右移:
(向左移位 相当于乘以2,向右移位相当于除以2。。。)
代码
# 昵称:追光者♂
# 性别:帅哥
# 生日:1999-10-24
# 故乡:山东省——济宁市
# 学历:硕士研究生
# 开发时间: 2022/3/31/0031 17:39
print('-----------按位与------------')
print(4 & 8) # 按位与 &,仅当 同为1 时结果为1。否则为0
print('------------按位或------------------')
print(4 | 8) # 按位或 |, 仅当同为0时结果才为0。否则为1
print('---------------向左 移位------------------')
print(4 << 1) # 向左移动一位(移动一个位置) 相当于乘以2
print(4 << 2) # 向左移动两位(移动两个位置) 相当于乘以两次2(乘以4)
print('------------------向右 移位----------------------')
print(4 >> 1) # 向右移动一位(移动一个位置) 相当于除以2
print(4 >> 2) # 向右移动两位(移动两个位置) 相当于除以两次2(除以4)