位运算进阶操作思维导图(简洁版)
2024-02-20 17:12:46 14 举报
AI智能生成
位运算进阶操作思维导图主要包括以下几个部分:1. 左移和右移操作,用于将二进制数向左或向右移动指定的位数;2. 无符号右移操作,用于将二进制数向右移动指定的位数,左侧用0填充;3. 按位取反操作,用于将每个二进制位取反,即0变为1,1变为0;4. 按位与操作,用于将两个二进制数的对应位进行与操作;5. 按位或操作,用于将两个二进制数的对应位进行或操作;6. 按位异或操作,用于将两个二进制数的对应位进行异或操作;7. 按位取零操作,用于将一个二进制数的指定位置为0;8. 按位设置操作,用于将一个二进制数的指定位置为1。这些操作可以帮助我们更高效地进行编程和处理数据。
作者其他创作
大纲/内容
&与运算
遇到0,等于0;
遇到1,等于其本身
遇到1,等于其本身
java的位运算一般是四个字节32位
计算系统中用补码表示,正数的补码=原码,负数的补码=原码非符号位取反+1.
补码的补码等于原码
| 或运算
和0或运算,等于它本身;和1或运算,等于1
筛选两个数有1的位
^异或运算
异或具有交换律和结合率
和0异或,等于它本身;和1异或,等于它的取反
两个相同的数异或等于0
~非运算
所有的位取反
<<左移
高位丢弃,地位补0
>>右移
对于有符号数,低位丢弃,高位补符号
>>> 无符号右移
通无符号数,低位丢弃,高位补0
高级操作
判断奇偶数
只需要判断最后一位是0还是1 a & 1 == 1
乘2
左移几位表示乘2的多少次方
a * 2 **3 ==> a << 3
特别的 2^8
1 << 8
除2^m(得到除数)
a >> m
交换两个数
a ^= b;
b ^=a;
a ^=b;
b ^=a;
a ^=b;
符号相反
~a + 1

收藏
0 条评论
下一页