1.使用位运算判断一个数是否是奇数
num = int(input('输入一个数:'))
if num & 1 == 1:
print('%d是奇数' % num)
2.表达式0x13&0x17的值是(0x13 )
3.若x=-20,y=3则x&y的结果是( 0)
4.表达式 -97 | 120 的运算结果是( -1 )
5.在位运算中,操作数每右移一位,其结果相当于(B)
A.操作数乘以2 B.操作数除以2
C.操作数除以4 D.操作数乘以4
6.设x 是一个整数(16位).若要通过x|y使x低度8位置1,高8位不变,则y的二进制数是( 1111111)
7.总结常用的位运算使用技巧
1.&的使用技巧
x&(x-1)
消去x最后一位的1
1.可以用来检测一个数是不是2的幂次。
如果一个数x是2的幂次,那么x>0且x的二进制中只有一个1,所以用x&(x-1)把1消去,应该返回0,如果返回了非0值,证明不是2的幂次
2.计算一个整数二进制中1的个数
因为1可以不断的通过x&(x-1)这个操作消去,所以当最后的值变成0的时候,也就求出了二进制中1的个数
网友评论