在线进制转换

在线进制转换、二进制转换十进制工具、十进制转换十六进制

关于进制转换

输入数值,选它现在的进制,再选要转成的进制。内部用 BigInt 计算,超过 2^53 的数也不会丢精度;普通数字早在你察觉之前就悄悄算错了。

支持 2、8、10、16、32 五种进制。输入可以带前缀(0x1F、0b1010、0o17),按你选的来源进制解析。负数也能转。

非法字符会被拦下来并明确提示,而不是静默截断。在二进制里输个 123,会告诉你哪几位不合法,而不是给你一个错答案。

各进制一般用在哪

十六进制最常见:颜色值、内存地址、文件头。二进制多用于位标志和教学。八进制现在主要是 Linux 权限位(0755 这种)。三十二进制日常少见,主要在一些老编码格式和 key 格式里。

精度问题,举个例子

2^53 是 9007199254740992。让普通数字存 9007199254740993,它会报成 9007199254740992,最后一位悄悄没了。二进制和十六进制串往往比十进制长得多,把一个长哈希转十进制时最先踩到。BigInt 没有这个上限,唯一的限制是你复制数字的耐心。

常见问题

为什么不直接用 parseInt?

parseInt 只支持到 36 进制,而且遇到非法字符会静默截断:parseInt('123', 2) 返回 1。这里先校验再用 BigInt 计算,不会截断。

能转多大的数?

BigInt 没有实际上限,几千位的数也能算。瓶颈在于你把结果复制到哪里去。

认识 0x、0b 这种前缀吗?

认识,前提是来源进制选对:0x 对应十六进制,0b 对应二进制,0o 对应八进制。不带前缀就按你选的进制解析。

负数支持吗?

支持,负号会跟着一起转换。

同类工具

转换工具 查看全部 ›