Java 位运算(了解)

计算机中的数在内存中都是以二进制形式进行存储的 ,而位运算就是直接对整数在内存中的二进制位进行操作

运算符 描述 运算结果
& 两者都为一时,结果才为一
| 两者都为零时,结果才为零
^ 易或 两者相同为零,相异为一
~ 取反 零变一,一变零
<< 左移 各二进位全部左移若干位,高位丢弃,低位补0
>> 右移 各二进位全部右移若干位,对无符号数,高位补0,有符号数,各编译器处理方法不一样,有的补符号位(算术右移),有的补0(逻辑右移)
例:
   A = 0101 0011
   B = 0011 1100
   ------------------- 
   A&B = 0001 0000
   A|B = 0100 0000
   A^B = 0110 1111
   ~A = 1010 1100
   ~b = 1100 0011

   2^4 = 16
   2 << 3 // 16 2的二进制位数 0000 0010 左移三位 等于 0001 0000
   4 >> 2 // 1  4的二进制位数 0000 0100 右移二位 等于 0000 0001
posted @ 2024-06-05 13:47  Ellieee  阅读(28)  评论(0)    收藏  举报