1.与(&)运算符
使用规则:两个二进制操作数对应位同为1 结果位 才为1,其余情况为0;
3 => 0000 0000 0000 0011
5 => 0000 0000 0000 0101
& 0000 0000 0000 0001 转换成十进制也就是1
2.或(|)运算符
使用规则:两个二进制操作数对应位只要有一个为1 结果位 就为1,其余情况为0;
3 => 0000 0000 0000 0011
5 => 0000 0000 0000 0101
| 0000 0000 0000 0111 转换成十进制也就是7
3.取反(~)运算符
使用规则:一个二进制操作数,对应位为0,结果位为1;对应位为1,结果位为0;
6 => 0000 0000 0000 0110
~ 1111 1111 1111 1010 转换成十进制也就是-7
4.异或(^)运算符
使用规则:两个二进制操作数对应位相同为0,不同为1;
3 => 0000 0000 0000 0011
5 => 0000 0000 0000 0101
^ 0000 0000 0000 0110 转换成十进制也就是6
5.同或(~)运算符
将参加运算的两个数据,按二进制位进行"同或"运算。相同为1,不同为0;
3 => 0000 0000 0000 0011
5 => 0000 0000 0000 0101
1111 1111 1111 0001 转换成十进制也就是-7
6.左移(<<)运算符
<< : 在一定范围内,每向左移 1 位,就相当于 * 2;
举例: 3 << 5
3 => 0000 0000 0000 0011
<< 0000 0000 0110 0000 转换成十进制也就是 96 = 3 * (2^5) (这里的^代表几次方 不是异或)
面试题:最高效的计算 2 * 8?
2 << 3 /或8 << 1
7.右移(>>)运算符
>> : 在一定范围内,每向右移 1 位,就相当于 / 2;
举例: 96 >> 5
96 => 0000 0000 0110 0000
<< 0000 0000 0000 0011 转换成十进制也就是 3 = 96 / (2^5)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码