day36
---------------------------------------------------------------
实例054:位取反、位移动
题目 取一个整数a从右端开始的4〜7位。
分析: 不会,直接上答案吧
(1)先使a右移4位。
(2)设置一个低4位全为1,其余全为0的数。可用(0<<4)
(3)将上面二者进行&运算。
a=int(input('输入一个数字: ')) b=0 # 0 b=~b # 1 b=b<<4 # 10000 b=~b # 1111 c=a>>4 d=c&b print('a:',bin(a)) print('b:',bin(b)) print('c:',bin(c)) print('d:',bin(d))
按位操作针对的是二进制,包括四种:按位与 &,按位或 |,按位异或 ^(异1同0),按位取反 ~