Tool Detail
进制转换
二进制、八进制、十进制、十六进制互转,支持任意大小整数。
输入数值后自动显示各进制转换结果,支持任意大小的整数。
使用说明
这个工具能做什么
在二进制、八进制、十进制、十六进制之间互转,并且支持任意大小的整数——不像很多在线工具那样超过 2^53 就精度丢失。基于 BigInt 实现,几百位的大数也能准确换算。
怎么用
- 选择输入数字的进制(2 / 8 / 10 / 16)
- 在输入框填数值,结果会同时显示四种进制
- 支持
0x、0b、0o前缀自动识别,也允许空格、下划线、逗号分隔(方便粘贴1111 0000这类分组写法) - 点「复制结果」一次拿到全部换算,或「分享」把输入和进制一起发出去
常见问题
为什么输出不是从 0 开始的?
输出是数值本身的四种进制写法,不是补码。比如十进制 -5 会输出 -101,而不是 32 位二进制补码 11111111...11111011。如果要做位运算或看补码,需要按固定位宽另行处理。
支持小数吗?
不支持。本工具只处理整数。小数(如 0.5)在不同进制下的表示涉及浮点规则和截断方式,容易产生歧义,因此不做。
超过 2^53 的数会不会算错?
不会。普通 JavaScript 的 Number 类型在超过 2^53 后会丢精度,这是很多在线工具出错的原因。本工具用 BigInt 做运算,任意长度的整数都精确。
十六进制输入要写 0x 吗?
不写也行。选「十六进制 (16)」直接输入 ff 即可;写了 0x 也会自动识别并忽略。字母大小写都接受。
为什么二进制结果里有空格?
二进制位数多时不容易数,所以每 4 位加一个空格分组,方便对照十六进制(4 位二进制正好等于 1 位十六进制)。这只影响显示,数值本身不变。
换算过程会上传吗?
不会,全部用本地 BigInt 计算。