任意进制转换
2–36 进制大整数互转:基于 BigInt 不受 2^53 精度限制,一次输入同时输出二进制、八进制、十进制、十六进制、32/36 进制与自定义字母表,支持负数、分组显示、位宽与二进制补码,并对非法字符定位提示。
浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。
输入
允许前缀 0x / 0b / 0o,以及空格、下划线、逗号作为分隔符。
结果
二进制 → 11111111 八进制 → 377 十进制 → 255 十六进制 → FF 32 进制 → 7V 36 进制 → 73
二进制
11111111八进制
377十进制
255十六进制
FF32 进制
7V36 进制
73这个工具能做什么
- 读汇编、协议文档或抓包数据时,把 0x1F、0b11111 这类写法换算成十进制,或者反过来把十进制写成十六进制、二进制。
- 调 bitmask、权限位、寄存器或颜色通道时,一次看到二进制、十六进制与 8/16/32/64 位补码,不用在脑子里做位运算。
- 处理超出 2^53 的大整数(雪花 ID、哈希前缀、以分为单位的金额)时用 BigInt 精确换算,不会掉精度。
- 非标准字符集场景:Base32/Base36 短链、订单号等用自定义字母表编码的编号,可以直接用同一套字母表读写。
示例
输入
255
输出
二进制 → 11111111 八进制 → 377 十进制 → 255 十六进制 → FF 32 进制 → 7V 36 进制 → 73
示例使用输入进制 10、默认字母表 0–9A–Z、不分组、不限位宽;输入里的 0x / 0b / 0o 前缀与空格、下划线、逗号都会被忽略。
常见问题
为什么十进制 255 的 32 进制是 7V?
32 进制取默认字母表 0–9A–Z 的前 32 个字符,数字用 0–9、字母只到 V。255 = 7 × 32 + 31,而 31 对应的字符是 V,所以结果是 7V。换成 36 进制后字母可以用到 Z,255 就写成 73。
能转小数吗?
不能,只接受整数。小数点在任意进制下都是非法字符,会直接报错并指出是第几个字符;需要小数请用普通浮点计算,这里的转换基于 BigInt,天然只有整数。
位宽和二进制补码是干什么的?
选择 8 位后,输入 255 会显示位模式 11111111、补码有符号值 -1,这就是 -1 在 8 位下的内存表示。输入超出该位宽的表示范围时会给出提示,并按位宽取模显示位模式,方便排查截断问题。
自定义字母表怎么用,有什么限制?
字母表同时用于读输入和生成「自定义字母表」那一行输出,长度必须不小于进制、且不能有重复字符,否则报错。如果内容和默认 0–9A–Z 的前 N 位一致,工具会按默认字母表处理。
输入的数据会被上传吗?
不会。所有换算都在浏览器里用 BigInt 完成,页面不发送网络请求,断网也能用,转换的数值不会被记录。
关键词:进制转换base converterbinary十六进制hexbigint二进制八进制base36补码two’s complement