位运算计算器
开发
输入两个整数,即可一次性查看所有常见位运算:AND、OR、XOR、NOT(~A 和 ~B)以及任意位数的左/右移位。每个结果都以二进制(按半字节分组)、十六进制、无符号十进制和二进制补码有符号十进制显示。选择 8、16、32 或 64 位宽,结果会回绕到该大小,因此 NOT 和移位的行为与 C、Rust 或寄存器中完全一致。输入支持十进制、0x 十六进制、0b 二进制和 0o 八进制,负数按二进制补码解释。使用任意精度整数计算,因此 64 位数值保持精确。非常适合嵌入式开发、位标志与掩码、协议解码以及学习位运算的原理。
—
支持十进制、0x 十六进制、0b 二进制、0o 八进制(允许负数)。
| 表达式 | 二进制 | 十六进制 | 十进制 | 有符号 |
|---|---|---|---|---|
| A | 0000 1100 | 0x0C | 12 | 12 |
| B | 0000 1010 | 0x0A | 10 | 10 |
| A & B | 0000 1000 | 0x08 | 8 | 8 |
| A | B | 0000 1110 | 0x0E | 14 | 14 |
| A ^ B | 0000 0110 | 0x06 | 6 | 6 |
| ~A | 1111 0011 | 0xF3 | 243 | -13 |
| ~B | 1111 0101 | 0xF5 | 245 | -11 |
| A << 1 | 0001 1000 | 0x18 | 24 | 24 |
| A >> 1 | 0000 0110 | 0x06 | 6 | 6 |
使用方法
- 在 A 和 B 中输入两个整数(十进制,或带 0x / 0b / 0o 前缀)。
- 选择位宽和移位位数。
- 在二进制、十六进制、无符号和有符号各列查看每个运算。
常见问题
- 负数如何处理?
- 按所选位宽的二进制补码解释 —— 例如 −1 在 8 位下变为全 1(0xFF)。有符号列显示每个结果的二进制补码值。
- 位宽会改变什么?
- 它将结果掩码到该位数,这对 NOT 和移位很重要。~12 在 8 位下是 0xF3,在 32 位下是 0xFFFFFFF3,就像 C 中的定长整数或 CPU 寄存器一样。
- 可以输入十六进制或二进制吗?
- 可以 —— 十六进制用 0x 前缀(0xFF),二进制用 0b(0b1010),八进制用 0o。普通十进制也可以。
- 64 位结果精确吗?
- 精确。计算器内部使用任意精度整数,因此 64 位运算不会像 32 位的 JavaScript 位运算符那样丢失精度。
相关工具
Base64 与十六进制互转
在浏览器中将 Base64 字符串转换为十六进制字节,并将十六进制转换回 Base64,支持 URL-safe。
开发00
Quoted-Printable 编码与解码
将文本编码为 MIME Quoted-Printable(RFC 2045)或解码 — 处理 =XX 转义、软换行与 UTF-8 — 全部在浏览器内完成,编码时按 76 字符换行。
开发00
哈希生成器 (SHA)
根据文本生成 SHA-1、SHA-256、SHA-384 和 SHA-512 哈希。
开发00
URL 编码 / 解码
将文本按百分号编码用于网址,或将编码的网址解码为文本。
开发00
Base64 编码 / 解码
即时将文本编码为 Base64,或将 Base64 解码为文本。
开发00
JSON 格式化与校验工具
在浏览器中格式化、美化、压缩并校验 JSON。
开发00