进制转换 — 二进制/八进制/十进制/十六进制
选源进制并输入值, 即可同时显示二进制、八进制、十进制、十六进制四种表示。编程、网络、电子工程实用。
- Binary (2)
- 11111111
- Octal (8)
- 377
- Decimal (10)
- 255
- Hexadecimal (16)
- FF
工作原理
位置进制的工作原理
每种进制使用位置记数: 最右边一位是 base⁰ = 1, 下一位是 base¹, 再下一位是 base² 等。十进制中 '255' = 2×100 + 5×10 + 5×1。二进制中 '11111111' = 1×128 + 1×64 + ... + 1×1 = 255。同一数字, 不同进制。
十六进制用 0-9 与 A-F 在每位容纳 16 个值。'FF' = 15×16 + 15×1 = 255。八进制用 0-7 (每位 3 比特), 二进制只用 0 和 1。换算是机械的 — 转十进制再转目标进制 — 本工具对任意非负整数自动处理。
各进制的应用
二进制 (base 2): 底层计算 — 比特字段、掩码、嵌入式固件。读寄存器布局、硬件级调试。
八进制 (base 8): Unix 文件权限 (chmod 755 = rwxr-xr-x)、一些遗留文件格式。如今较少。
十进制 (base 10): 人类日常计数。普通算术的默认。
十六进制 (base 16): 软件中最常见 — 颜色 (#FF6B35)、内存地址 (0x7fff...)、MAC 地址、二进制数据的字节表示、编码哈希。
速查参考
1 字节 = 8 比特 = 16 进制 2 位 = 256 个值 (0-255)。1 hex 位 = 4 比特 = 16 个值。1 octal 位 = 3 比特。Hex 'FF' = 十进制 255 = 二进制 11111111。Hex '100' = 十进制 256。Hex 'FFFF' = 十进制 65535 (16 比特无符号最大)。Hex 'FFFFFFFF' = 十进制 4294967295 (32 比特无符号最大)。
常见问题
›十六进制区分大小写吗?
'ff' 与 'FF' 解码为同一值。我们按惯例显示大写。
›可以输入负数吗?
可以, 加 '-' 前缀。每种进制带符号显示 (例 -255 → -FF 十六进制)。
›最大值?
受 JavaScript 安全整数范围限制 (约 2⁵³)。更大的值用 BigInt 感知工具。
›如何处理 0x 或 0b 前缀?
去掉前缀再输入。'0xFF' → 选十六进制只输 'FF'。'0b1010' → 选二进制只输 '1010'。
›为什么 Unix chmod 用八进制?
权限有三组 (所有者/组/其他) 各 3 比特。每组 3 比特正好对应一个八进制位, 所以 755 = 111 101 101 = rwx r-x r-x。
›可以转换小数吗?
本版只支持非负整数。定点支持后续考虑。
›出现「该进制无效」?
你输入的字符在所选进制中不允许。十六进制允许 0-9 和 A-F; 二进制只 0 和 1; 等。
›数据会上传吗?
不会。转换在本地。
相关工具
最后更新: