任意进制转换器

🔄 Integer Base Converter

Switch integers across bases (2–36) in your browser for programming, debugging and bitwise work.

📐 工作原理与说明
进制范围 2–36,越界自动钳制;BigInt 按源进制解析后同时输出 2 / 8 / 10 / 16 / 32 / 36 进制结果;支持正负号(如 -255);不接受 0x/0b/0o 前缀;解析失败时主输出置 ❌ 并显示错误原因
在 2–36 进制之间转换整数。
  • 字母表:0–9 之后用 a–z 表示 10–35,故最高支持 36 进制;输出统一小写,输入大小写不敏感。
  • 算法:任意进制按权展开求和转十进制,再用除基取余转目标进制。
  • 边界:正负号先行剥离再解析(-255 十进制等价于 -ff 十六进制);本页只做整数,小数请用浮点转换工具。
  • 大数:全程 BigInt,超出 2⁵³−1 的整数逐位精确,不经过 Number。
转换结果
—
进制值
二进制 (2)—
八进制 (8)—
十进制 (10)—
十六进制 (16)—
Base32 (32)—
Base36 (36)—

📚 深度解析:任意进制转换器

💡 常见使用场景

转换
255 转 36 进制 = `73`(字符 0-9A-Z);`Z`(36进制)=35(10)。

❓ 常见问题(FAQ)

超过 36 进制怎么表示?
需自定义符号表,标准仅到 36(0-9A-Z)。
为什么大整数转出来末尾不对?
多半是用浮点数算的。JS 的 Number 只能精确表示到 2⁵³−1,超过后低位会被舍入,表现为末尾变成 0 或随机数字。处理大整数应使用 BigInt(或 Python 的任意精度整数),并确认中途没被 JSON.parse 之类步骤转回 Number。

Formula & Standard References

Item Formula / Note Source / Standard
Positional notation value = sum d_i * base^i for bases 2 to 36 ISO 80000-2
Digits digits 0-9 followed by a-z for values 10-35 RFC 4648 (analogy)
Arbitrary precision values beyond 2^53 need big integers, not floats IEEE 754-2008