具体可参考C语言的按位运算符
1. 数字2表示的为10进制,换成对应的2进制:10
2. << 表示左移动,5表示要移位的位数
即现在的2进制数为:1000000
3.
对应的10进制数据为64
4. 同理 >> 表示右移动
1000对应的2进制:1111101000
右移2位后: 11111010,对应的十进制表示为:250
5. 按位与(&)运算符
二进制数按照位的对应相与,即二进制的每一位相与,得到一个新的二进制数。1与0为0;1与1为1;0与0为0。也就是遇到0就把那一位清0,遇上1就把那一位保留
0 对应的2进制:0
ff(16进制)对应的2进制:11111111
按位与运算后对应的2进制为:0000,即对应的10进制为0,over~
6. 按位或(|)运算符
只要对应的二个二进位有一个为1时,结果位就为1