Toolify

进制转换 — 二进制/八进制/十进制/十六进制

选源进制并输入值, 即可同时显示二进制、八进制、十进制、十六进制四种表示。编程、网络、电子工程实用。

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; 等。

数据会上传吗?

不会。转换在本地。

相关工具

最后更新: