& 与, 两个为1才是1,其他都是0
| 或, 两个为0才是0,其他为1
^ 亦或, 两个相同是0,两个不同为1
&= a &= b; 等于 a = a & b;
|= 如上
^= 如上
技巧:
与,可以用来屏蔽掉某些位, 或保留某些位, 用一个数,零位就可以用来屏蔽,1位就可以用来保留原状
0xffff & 0x00ff == 0x00ff, 屏蔽掉 高位0xff00,保留低位 0x00ff;
或,可以用来设置某些位,因为不会改变原来的1位,只能改变零位,可以让多个设置组合起来.
0x000f | 0x00f0 == 0x00ff;
然后可以用与来判断是否设置了这个位
0x00ff & ox00f0 == 0x00f0;
|