1、位运算
程序中所有的数据在计算机中都是以二进制存储的,位运算就是对二进制位进行操作。
可与1进行按位与操作,判断奇偶数。1奇 0偶
按照二进制位进行运算操作
【1】& 按位与
【2】| 按位或
【3】^ 按位异或
【4】<< 左移,右侧补0
【5】>> 右移,挤掉右侧的数字
eg: 先将十进制数字转换为二进制,再按位一一对应比较
11 1011
14 1110
& 1010 相同位一0则0
| 1111 相同位一1则1
^ 0101 相同位 ,相同0不同1
11 << 2 ===> 44
#把11转为二进制后,左移2位(即,在11转为二进制的结果后面补两个0),11<<2实际上就是,11乘以2的二次方
a << b
#把a转为二进制后,左移b位(即,在a转为二进制的结果后面补b个0),a<<b实际上就是,a乘以2的b二次方
14 >> 2 ===> 3 挤掉右侧的数字
# 把14转为二进制后,右移2位(即,在14转为二进制后的结果后,挤掉右边两个为上的数字,即为11,即十进制的3 )
二进制转十进制:从右往左,每个位乘以从2的【第几位】次方之和
eg:1110转十进制
0*2**0+1*2**1+1*2**2+1*2**3
In [36]: 0*2**0+1*2**1+1*2**2+1*2**3
Out[36]: 14
2、用途
【1】 在做底层硬件时操作寄存器
【2】 做标志位的过滤
【3】可与1进行按位与操作,判断奇偶数。1奇 0偶
原文:https://www.cnblogs.com/longyuu/p/14235269.html