实用工具
输入
结果
结果会显示在这里。你的运行记录
只有消耗积分的运行才会保存。
登录后可以保留你的运行记录。
在 2 到 36 的任意两个进制之间转换,使用任意精度算术,所以一个 64 位的十六进制标识符能精确转换,而不会像 parseInt 那样在超过 2^53 后悄悄丢掉低位。读权限掩码、颜色值、数据库标识符,以及日志里以十六进制出现的任何东西时都用得上。
它是怎么工作的
- 运算使用 BigInt,精度不随数字大小变化。
- 数字会按源进制校验,非法数位会被指名,而不是被悄悄忽略。
- 转换结果旁边会同时给出十进制值和位宽。
你的数据去了哪里
哪也没去。本工具完全在你的浏览器里运行:你粘贴的文本由页面处理,不会传输到任何服务器,也不会写进任何日志。
当一次运行消耗积分时,会向你自己的历史里保存一行摘要,方便回头查找。摘要记录的是这次运行的形态——大小、数量、你查询的值——而不是你粘贴的内容。
它要花多少
本工具完全免费,不需要登录,也不消耗积分。
常见问题
- 为什么 JavaScript 的 parseInt 给出的结果不一样?
- parseInt 返回双精度浮点数,整数精度只有 53 位。超过约 16 位十六进制的数会被舍入。这个工具用 BigInt,不做舍入。
- 负数怎么转成二进制?
- 这个工具显示符号加数值。补码表示依赖字长——8 位、32 位、64 位——那是你所在系统的属性,而不是这个数本身的属性。
- 36 进制有什么用?
- 数字加上全部拉丁字母,使它成为一个数最紧凑的大小写不敏感编码。短链服务和标识符方案会用到它。
背后的开源项目
本工具是独立实现,并未打包第三方库。MikeMcl/bignumber.js(MIT)在代码层面做的是同一件事——如果你需要在自己的程序里实现它,从那里开始,而不是调用一个网页。
MikeMcl/bignumber.js也常被称作
- 进制转换
- 十六进制转十进制
- 二进制转换
- 十进制转十六进制
- hex转换