位运算计算器
32 位位运算计算器:AND/OR/XOR/NOT/左移/右移,支持十进制/十六进制/二进制输入,实时可视化位翻转。
🧮 Bitwise Calculator
Perform bitwise AND, OR, XOR, NOT and shifts in your browser — handy for low-level work.
📐 工作原理与说明
对整数按位执行布尔运算与移位,常用于掩码、标志位与底层协议解析。
- 运算:AND
&、OR|、XOR^、NOT~、左移<<、右移>>、无符号右移>>>。 - 位宽:JS 位运算按 32 位有符号补码处理,超出 32 位会被截断,须注意溢出。
- 性质:
~x = −x − 1;>>保留符号位,>>>高位补 0。 - 常用法:取位
(v & mask) >> shift、置位v | (1 << k)、清位v & ~(1 << k)。
结果(32 位可视化)
📚 深度解析:位运算计算器
💡 常见使用场景
- 处理掩码、权限位、底层协议字段。
- 权限位设计:用 READ=1、WRITE=2、EXECUTE=4 组合权限,检查某权限看 (flags & 4) 是否为 0,比存三个布尔字段更紧凑,也便于一次存进数据库的整数字段。
位与
0b1100 & 0b1010 = 0b1000(即 12 & 10 = 8);0b1001 | 0b0110 = 0b1111=15。
❓ 常见问题(FAQ)
- & 与 && 区别?
- & 是按位运算,&& 是逻辑短路运算。
- 右移有符号和无符号的区别?
- >> 是算术右移,高位补符号位,对负数保持负数(−8 >> 1 = −4);>>> 是逻辑右移,高位补 0,负数会变成一个很大的正数。处理标志位与哈希时应统一用 >>>,避免符号扩展污染结果。