二进制到十进制转换器 | 免费在线工具
二进制与十进制转换器可以将二进制数值转换为对应的十进制数值,也可以反过来将十进制数值转换为二进制数值,并同时展示具体的换算公式和完整的逐步计算过程,每一位二进制数字都对应2的相应次幂。该免费在线工具适合程序开发者深入理解计算机数制原理,也适合学生学习计算机基础知识课程时使用参考。
二进制-十进制转换器
即时转换二进制和十进制数字系统。
二进制数字仅使用0和1
十进制数字使用0-9的数字
在任一字段中输入值,即可在另一个字段中看到转换结果。
文档
二进制转十进制转换器
二进制转十进制转换器可在以2为底(二进制)和以10为底(十进制)的数之间进行转换。二进制是计算机内部使用的数制,只用0和1书写。十进制是人们日常使用的数制,使用从0到9的数字书写。此工具会立即将任一输入框中的数值转换为另一种数制,并显示结果背后的算术过程。
十进制的工作原理
十进制数使用十个数字,即0到9。十进制数中的每个位置都表示10的幂。从右向左,各位置的权值依次为1、10、100、1,000,依此类推。
以数值427为例:
- 4 × 100 = 400
- 2 × 10 = 20
- 7 × 1 = 7
将这些数相加,得到400 + 20 + 7 = 427。
二进制的工作原理
二进制数只使用两个数字,即0和1。每个位置表示2的幂,而不是10的幂。从右向左,各位置的权值依次为1、2、4、8、16,每次加倍。
以二进制数1010为例:
- 1 × 8 = 8
- 0 × 4 = 0
- 1 × 2 = 2
- 0 × 1 = 0
将这些数相加,得到8 + 0 + 2 + 0 = 10。
二进制转十进制公式
要将二进制数转换为十进制数,应将每个数字乘以其所在位置对应的2的幂,然后将结果相加:
十进制数 = 对每个数字计算 bᵢ × 2ⁱ 后求和,其中 bᵢ 是位置 i 上的数字(0或1),位置从右侧的0开始计数。
示例:将1101转换为十进制
- 1 × 2³ = 8
- 1 × 2² = 4
- 0 × 2¹ = 0
- 1 × 2⁰ = 1
- 总和:8 + 4 + 0 + 1 = 13
二进制1101等于十进制13。只有所在位置为1的数字会对总和产生贡献,因此手算时可以跳过0。
十进制转二进制公式(除二取余法)
要将十进制数转换为二进制数,应反复将其除以2,并记录每次的余数。
- 将数除以2。
- 记下余数,余数始终是0或1。
- 再将商除以2。
- 重复此过程,直到商变为0。
- 从下到上读取余数。
示例:将25转换为二进制
- 25 ÷ 2 = 12,余数为1
- 12 ÷ 2 = 6,余数为0
- 6 ÷ 2 = 3,余数为0
- 3 ÷ 2 = 1,余数为1
- 1 ÷ 2 = 0,余数为1
从最后一行向第一行读取余数,得到11001。十进制25等于二进制11001。
如何使用此转换器
在二进制输入框或十进制输入框中输入数字,另一个输入框会立即更新。无效输入(例如在二进制输入框中输入2,或在十进制输入框中输入字母)会显示错误消息,而不是结果。
两个输入框下方的面板会显示当前转换背后的算术过程:二进制转十进制时显示按2的幂展开,十进制转二进制时显示除以2的步骤。除法步骤按逆序列出,最后一次除法位于顶部,因此从上到下读取余数即可得到二进制结果。
转换器接受任意大小的二进制数和十进制数。它使用精确的任意精度运算,而不是标准浮点运算,因此长数值不会被舍入。逐步计算面板使用同样精确的运算,因此它列出的每个数位权值和每个商都与转换结果逐位一致。转换器不接受负数或分数。
二进制转十进制的应用场景
- IP 地址。 一个IPv4地址,例如192.168.1.1,由四个以十进制表示的二进制字节组成。192是11000000,168是10101000,1是00000001。
- 文件权限。 Unix 权限代码755是二进制模式111101101的简写,表示所有者拥有完全访问权限,其他用户拥有读取和执行权限。
- 位标志。 将一个字节设为255会开启全部8个位,表示为11111111。软件通常用这种方式通过一个数同时标记多个设置已开启。
- 数字硬件。 电路寄存器以位的形式存储设置,因此配置设备可能需要将十进制值转换为设备所需的确切位模式。
相关数制
十六进制(以16为底)和八进制(以8为底)是二进制的简写形式。每个十六进制数字恰好表示4个二进制位,每个八进制数字恰好表示3个二进制位。
- 二进制10101101是十六进制 AD,等于十进制173。
- 二进制101011是八进制53。
常见问题
什么是二进制数?
二进制数只使用两个数字,即0和1。每个数字称为一个位,也叫比特。任何整数都可以通过组合足够多的位写成二进制形式,就像任何单词都可以用有限的字母表写出一样。
计算机为什么使用二进制而不是十进制?
与十种不同的电压水平相比,电子电路以更低的成本、更可靠地存储和切换两种明确状态,例如高电压和低电压。二状态逻辑也与布尔代数相符;布尔代数是数字电路用于执行计算的数学分支。
如何手动将二进制转换为十进制?
将每个二进制数字乘以与其位置对应的2的幂,位置从右侧的0开始计数,然后将结果相加。对于二进制1101:1×8 + 1×4 + 0×2 + 1×1 = 13。
如何手动将十进制转换为二进制?
反复将十进制数除以2,记下每次的余数,直到商变为0。然后从最后一个余数向前读取。十进制13通过这种方法变为二进制1101。
此转换器支持负数或分数吗?
不支持。它只接受非负整数。负二进制数使用称为二进制补码的独立表示方案,二进制分数也不同于整数转换。
此转换器能处理的最大数是多少?
没有固定的大小限制。转换器使用任意精度运算,因此可以精确转换非常长的二进制数或十进制数,包括远超普通浮点运算所能无舍入误差表示的数值。计算步骤面板同样精确。由一个1后跟六十个0组成的二进制数是十进制1152921504606846976,面板会完整显示该位权值,而不是显示普通浮点运算给出的舍入值1152921504606847000。
二进制、八进制和十六进制有什么区别?
三者都和十进制一样属于进位计数制,但基数不同:二进制以2为底,八进制以8为底,十六进制以16为底。一个十六进制数字始终恰好等于4个二进制位,一个八进制数字始终恰好等于3个二进制位,因此它们常用作长二进制数的紧凑简写形式。