基本位操作:

    & 按位与, 对应位均为1时为1,其它为0。
    | 按位或,对应位均为0时为0,其它为1。
    取反 ~ 每一位取反
    异或 ^ 两位相同为0,相异为1
    左移 << 高位丢弃,低位补0
    右移 >> 无符号数,高位补0;
    有符号数,各编译器处理不一样,有的补符号位(算术右移),有的补0(逻辑右移)