进制转换器

进制转换器支持 2 到 36 任意进制互转,十进制、二进制、十六进制、八进制之间随便换,超大整数用 BigInt 精确计算,位数再多也不丢精度。使用时在页面上方的输入框里填入要转换的数字,在源进制和目标进制下拉里选好进制,需要 0x、0b 这类前缀输出或按位分组显示,可以在下方选项里打开。填好后点「开始转换」,结果会显示在下方的结果区域,点「复制结果」即可拿走。

它如何工作

解析时逐字符查表得到该位的数值,累加 result = result × 进制 + 位值。全程使用 BigInt,因此 64 位甚至几百位的整数都能精确转换——用普通 JavaScript 数字,超过 2⁵³−1 就会静默丢精度,这是解析 ID、哈希、时间戳时最隐蔽的 bug 来源。

输出时反复取余与整除,再把余数映射回字符。负数会保留符号,小数与科学计数法不支持(进制转换本身只对整数有明确定义)。

常用参考值

含义十进制十六进制二进制
1 字节最大值255FF11111111
2 字节最大值65535FFFF1111111111111111
4 字节最大值4294967295FFFFFFFF32 个 1
2⁵³ − 1(JS 安全整数上限)90071992547409911FFFFFFFFFFFFF53 个 1
2⁶⁴ − 118446744073709551615FFFFFFFFFFFFFFFF64 个 1

用二进制/十六进制表示网络掩码、权限位、颜色通道、哈希前缀时,本工具会同时给出分组形式,便于肉眼核对位数。

常见问题

为什么输入超过 16 位数字时结果不对?

这是 JavaScript 数字精度的限制(安全整数上限约 9×10¹⁵)。本工具用 BigInt 规避了这个问题,但请确保输入时不要包含小数点或指数记号,否则工具会拒绝并提示。

支持负数吗?

支持,会保留负号。但进制转换中的「补码」是另一种语义——如果你需要的是 32 位补码表示,请先用本工具算出无符号值,再自行按位数取反加一。

结果如何复制?

点击结果表格里的任意一行即可复制该行的值,适合直接粘进代码或配置里。

怎么用

  1. 在输入框里粘贴要转换的数字,比如十进制的 255。
  2. 分别选好当前进制和目标进制,比如从十进制转成十六进制。
  3. 点转换按钮,结果立刻显示,点复制即可使用。
  4. 需要的话打开大小写、前缀或按位分组开关,输出格式会跟着变。

适用场景

注意事项

相关工具推荐

开源与下载
← 返回知办库首页
GitHub 开源源码 Gitee 开源源码(国内) 夸克网盘下载 百度网盘下载
夸克提取码:1346 | 百度提取码:ztmb
查看绿色版下载页 →