位运算用于整型数据和char,位运算操作的都是补码(正数的原码补码一样)
按位逻辑运算符
位与 & 二元运算符,通过逐位比较俩个运算对象。类似于&&只有都为真才为真。
位或 | 二元运算符 类似于||,如果有一个为或俩个为真就为真
! **位非~**一元运算符,把1变为0;0变为1.(符号位也变)。
异或 ^ 二元运算符,俩个运算对象中相应的位只有一个为1,结果为1.
移位运算符
左移运算符 << 有无符号数都一样:将补码整体左移指定位数,左移后右边空出的位用0填充超出左边边界的舍弃不要,左移n位就相当于乘以2的n次方。
右移运算符>>
将补码整体右移指定位数,如果是正数右移后空出的位用0填充,负数则用1填充,超出右边边界的舍弃不要。