进制转换器
在二、八、十、十六进制及至多 36 的任意进制之间转换数字
本地运行
loading…
关于此工具
以任意进制输入一个数,同时读到它的二进制、八进制、十进制和十六进制表示——外加至多 36 的任意自定义进制。前缀会被识别(0x、0o、0b),数位分组让长数值一眼可辨(1111 1111 · 255 · ff),位长读数让你立刻知道一个值放不放得进 8、32 或 64 位。
运算基于 BigInt,任何大小都精确无误:文件权限、ARGB 颜色、IP 地址、哈希前缀和 64 位数据库 ID 都能转换,不会遇到普通 JavaScript 数字在 2⁵³ 以上的静默舍入。
负数在所有进制下保留符号。一切在本地即时计算,随输入实时更新。
常见问题
- 自动识别是怎么判断进制的?
- 看前缀:0x 是十六进制,0o 八进制,0b 二进制;其余按十进制解析。像 "ff" 这样不带前缀的数字有歧义,请显式选择十六进制——错误信息也会提醒你。
- 超大的数真的精确吗?
- 真的——转换运行在任意精度的 BigInt 上。18446744073709551615(2⁶⁴−1)能精确往返;基于浮点的转换器会把它错成 …551616。
- 负数的二进制怎么显示?
- 带负号(-1010),而不是二进制补码,因为补码需要固定位宽。想看补码位型,把 2ⁿ 加到你的负值上(n 取你关心的位宽)再转换。
- 36 进制能用来干什么?
- 紧凑 ID:0-9 加 a-z 是既不区分大小写又 URL 安全的最稠密字母表。许多短链接服务和工单系统就是这样编码数字 ID 的——粘贴一个进来就能读出背后的数字。