← 首页

🔢 进制转换器

在二进制(2 进制)、八进制(8 进制)、十进制(10 进制)与十六进制(16 进制)之间自由转换,支持负数与小数。

这是什么工具?

进制转换是将同一个数量以不同的位值记数系统来表达的过程。我们日常使用的十进制是 10 进制系统,每个数位代表 10 的次方;计算机内部则以二进制(2 进制)运作,每个位置是 2 的次方。八进制(8 进制)与十六进制(16 进制)是程序设计、内存寻址与数字电子中广泛使用的简洁速记法——每个八进制数位恰好对应三个二进制位,每个十六进制数位对应四个。 这款转换器可让任何数字在四种进制之间瞬间互换。它处理超大整数不失精度、支持以正负号表示的负数,还能换算小数部分并自由调整小数位数。输入数字、选来源进制、选目标进制,结果立刻出现。 所有计算都在浏览器本地完成,无服务器往返——转换即时、私密且可离线使用。无论是学习进制运算的学生、调试十六进制转储的程序员,还是阅读 IP 地址与 MAC 地址的网络工程师,这款工具都能省去心算与手动长除法。

需要相关计算时,可试试 科学记数法计算器, 罗马数字转换器, 数据存储单位转换器,探索更多实用工具。

运作原理

计算器以十进制为中间步骤进行转换。首先,将来源进制的输入数字展开为多项式并求值得到十进制值:例如二进制 1011₂ = 1×2³ + 0×2² + 1×2¹ + 1×2⁰ = 8 + 0 + 2 + 1 = 11。接着以反复除法将十进制值转换为目标进制:除以目标进制、记录余数、重复直到商为零,将余数反向读出即得结果。 小数部分使用反向流程:将小数部分乘以目标进制,取整数部分作为下一个数位,重复进行。因为某些分数在特定进制下永不终止(例如十进制 0.1 在二进制中是无限循环展开),工具让您选择计算多少位小数,并在展开不终止时提示。 一个实用的衍生功能是位长估算:对任何十进制值,工具会显示需要多少个二进制位来表示,这在为通信协议或硬件寄存器分配固定宽度字段时很有帮助。

二进制位权示意

二进制中每个位的位置代表 2 的次方。

10110101128643216842110110101₂ = 128+32+16+4+1 = 181

进制转换对照表

0–15 在四种进制中的等价表示。

十进制二进制八进制十六进制
0000
1111
21022
31133
410044
510155
611066
711177
81000108
91001119
10101012A
11101113B
12110014C
13110115D
14111016E
15111117F

常见位组合速查

计算机领域常用的二进制与十六进制值。

十进制二进制十六进制典型用途
25511111111FF字节最大值、RGB 分量
256100000000100字节溢出、2⁸
102410000000000400二进制中的 1 KiB
409610000000000001000许多系统的页面大小
655351111111111111111FFFF16 位无符号整数最大值
2147483647011111111111111111111111111111117FFFFFFF32 位有符号整数最大值
Ad

使用方法

  1. 输入要转换的数字。
  2. 选择来源进制——二进制、八进制、十进制或十六进制。
  3. 选择目标进制。
  4. 点击“转换”查看结果。
  5. 若转换十进制小数,可调整小数位数。

常见问题

为什么计算器要通过十进制转换?

在任意进制之间直接转换虽然可行,但人为操作容易出错。以十进制作为中间步骤可同时保证整数与小数转换的正确性,因为转换过程本身的十进制运算是精确的。

支持负数吗?

支持。负数以负号加上目标进制的绝对值表示(正负号形式),这与补码不同——补码是计算机硬件内部使用的固定宽度表示法。

能处理多大的数字?

整数部分使用 JavaScript 的 BigInt,支持远超 2⁵³ 的整数而不失真。小数部分则计算到可设置的位数。

什么是补码?为什么这里不用?

补码是在固定宽度二进制(如 8 位或 32 位)中表示负整数的方式,需要事先知道宽度。本转换器显示较简单的正负号形式,在没有固定宽度时不会产生歧义。

为什么 0.1 无法干净地转成二进制?

十进制小数 0.1 在二进制中是无限循环展开,就像 1/3 在十进制中循环(0.333...)一样。工具计算有限位数并标示展开不终止。

支持哪些进制?

二进制(2 进制)、八进制(8 进制)、十进制(10 进制)与十六进制(16 进制)。这四种涵盖了程序设计、电子与网络的绝大多数用途。

技巧与建议

每个十六进制数位恰好对应四个二进制位(0-F = 0000-1111),每个八进制数位对应三个位(0-7 = 000-111)——把二进制位以四位或三位分组能大幅加快手动转换。2 的次方无处不在:2¹⁰ = 1024,这就是 1 KB 等于 1024 bytes 的原因。转换负数时请记住,本工具使用负号加绝对值,而非补码——补码是计算机内部使用的固定宽度表示法。小数转换时,目标位数越多精度越高;像 0.1 这种简单十进制小数在二进制中往往需要很多位数。内存地址与颜色代码用十六进制、Unix 文件权限用八进制、需要逐一思考位时用二进制。

相关工具

来源与参考

  1. NIST. SI 指南 - 十进制与二进制前缀。physics.nist.gov。
  2. Wolfram MathWorld. 数制。mathworld.wolfram.com。

最后审阅:2026 年 8 月。

限制与免责声明

本工具在位置记数系统之间转换,专为教育与程序设计用途设计。

本工具未涵盖的因素:

关键转换请务必以独立方法验证后再使用。

Ad