进制转换工具

在2至36进制之间精确转换整数,支持长整数、负数和十六进制大小写输出。

工具资源加载中...

进制转换工具介绍

进制转换工具支持 2 至 36 进制整数互转,可用于二进制转十进制、十进制转十六进制、八进制换算和长整数表示对照。转换按数字字符串逐位计算,不把整个输入转成浮点数,因此超过常规 JavaScript 安全整数范围的数字也能保留每一位。

2 至 36 进制互转

数字 0–9 与字母 A–Z 表示 0–35,输入字母不区分大小写,输出字母可选择大写或小写。

精确处理长整数

输入数字部分最多 1024 位,支持正负号。使用数组长除法,避免整个长整数进入浮点数造成末位变化。

反向校对与导出

结果可复制、保存 TXT,也可回填并交换进制后再转换,便于校对数字表示。

进制转换使用方法

  1. 输入整数,例如 FF、101010 或长十进制数字。
  2. 明确选择原进制与目标进制,例如十六进制转十进制应选择 16 → 10。
  3. 按需勾选结果字母大写,点击“开始转换”。
  4. 复制或导出结果;“回填并交换进制”只回填,不自动再次转换。

“加载示例”使用长整数 123456789012345678901234567890,设置为 10 → 16 并立即转换。修改输入或选项会清除旧结果。低进制结果可能超过 1024 位;这时仍可复制或导出,但会显示位数提示并隐藏回填操作,避免超过输入限制。

常用进制示例与输入规则

11111111(2 进制)、377(8 进制)、255(10 进制)和 FF(16 进制)表示同一个整数。十进制 35 转成 36 进制为 Z,十进制 -42 转成二进制为 -101010。

可使用 0b、0o、0x 前缀,但原进制必须分别选择 2、8、16;不匹配时会报错。前缀识别不区分大小写,符号写在前缀之前,如 -0xFF。结果不附前缀,去除多余前导零,-000 统一输出 0。

只接受整数。数字中间不能包含空格、逗号、下划线或小数点;输入两端空白会被去除。十进制模式下不接受 1e3;在允许字母的更高进制中,E 按该进制的数字 14 处理,不表示科学计数法。

适用场景与转换优势

适合编程学习、内存地址数字对照、协议字段排查、二进制练习和长整数表示转换。计算在当前浏览器完成,不提交输入数字。局部除法只处理较小整数,长数字精度由数组位值保留。

本工具处理带正负号的数学整数,不输出固定位数、补码、反码、机器字节序或浮点数编码。需要计算文本摘要可使用 MD5 / SHA 摘要工具;需要可还原的文本编码可使用 Base64 编码解码。

进制转换常见问答

为什么二进制输入 102 会报错?

二进制只允许数字 0 和 1。每一位的数值必须小于原进制,例如十六进制允许 A–F,不能使用 G。

超过 16 位的十进制整数会丢精度吗?

本工具不把整个数字转换为 Number,而是逐位长除法,所以在 1024 位输入限制内保留整数精度。复制到其他会自动解析为浮点数的软件后,仍需注意对方的精度限制。

负数为什么没有变成一串补码?

结果使用负号表示负整数。补码必须先约定 8 位、32 位等位宽,本工具未提供位宽或补码模式。

为什么高进制中以 0x 开头会报错?

0b、0o、0x 被保留为明确前缀,即使某些字母在高进制中合法,也要求匹配原进制。若该文本实际是无前缀的高进制数字,去掉不影响数值的首位 0 后再输入。