十进制25 & 13 = 9
A00011001= 25
B00001101= 13
🔍 逐位运算演示(高位在左,低位在右)
7
6
5
4
3
2
1
0
A
0
0
0
1
1
0
0
1
&
&
&
&
&
&
&
&
B
0
0
0
0
1
1
0
1
=
0
0
0
0
1
0
0
1
128
64
32
16
8
4
2
1
点击任意格子可高亮该二进制位所在的一列;从最高位(左)到最低位(右),对每一位独立进行 按位与 运算,不产生进位。
按位与 结果
00001001
二进制:00001001十进制:9
📝 运算规则说明

按位与 &:只有当对应位 A 和 B 都为 1 时结果位才为 1,否则为 0。常用于屏蔽(清零)指定位,例如 x & 0xFF 可取低 8 位。

💡 概念速记

  • 按位与 &:对应位都为 1 时结果为 1,否则为 0。常用于取指定位清 0
  • 按位或 |:对应位有 1 个为 1 时结果为 1。常用于置位、合并标志。
  • 按位异或 ^:对应位不同时为 1,相同时为 0。常用于翻转位不进位加法
  • 按位非 ~:单目运算,0 变 1、1 变 0(按补码取反,含符号位)。
  • 特点:按位运算对每一位独立进行,不产生进位,是位运算与算术运算的最大区别。