二进制与十进制转化

二进制是在数学和数字电路中以2为基数的记数系统,是以2为基数代表系统的二进位制。十进制为我们日常学习生活中常用的计数方式。二进制为 逢二进一 原则,十进制即为逢十进一,向前进一位。

二进制转十进制

二进制数的结构说明:从右往左开始计算位数,一串二进制数的最右边第一位表示零位,往左依次增加位数,例:101101101 最右边的数字1即为该二进制数的零位,可以表示为20,从右往左第二位数字0即为二进制数的1位,可表示为21
转换示例
例1:10101101转为十进制?
答:
10101101=27 ×1+26×0+25×1+24×0+23×1+22×1+21×0+20×1=173
解释:二进制转为十进制,从右往左开始,每一位数乘以2n ,n等于二进制数中的某一位,因为最右边的一位数表示0位,即20 ×1。从右往左,从0开始位数依次递增,最后把每一位数加起来,计算出来的结果即为该二进制数所对应得十进制数。

例2:1011101 的十进制?

答:
1011101=26×1+25×0+24×1+23×1+22×1+21×0+20×1=93

十进制转二进制转换

方法:除二取余数。十进制数用短除法除二,每除一次2就记录其余数,直到最后被除数为1才结束,然后将所有余数倒序排列,即可得到二进制数。

例1:
十进制8 的二进制数?

答:如下图所示

Alt

利用短除法,每除以一次2就记录一次余数,最后将所有余数自下往上,从左往右排列,即可得到 8 的二进制数 1000

例2:
十进制27 的二进制表示?

答:如下图所示

Alt

原理同例1,结果为:11011

二进制与八进制转换

二进制转八进制

八进制:计数规则 “逢八进一”,3 位的二进制数恰好相当于 1 位八进制数。这样一来,在把二进制整数转换为八进制数时,只要从20 开始依次地把每 3 位二进制数划分为一组,并且把每一组用一个八进制数代替就可以了。

对于小数部分,则应从2-1 开始,将每 3 位二进制数划分为一组,然后再分别代之以八进制数即可。

示例: 将(10110101.00111101)2 转为八进制数?

答:如下图所示

Alt

故结果为:265.172
【注】: 如果 3 位为一组,在划分二进制数的时候,最后不足 3 位数,则添加 0 来补全。

八进制转二进制

在将八进制数转换成二进制数时,只要按原来顺序把每 1 位八进制数用相应的 3 位二进制数代替即可。

示例: 将(512.304)8 转换为二进制数?

答:如下图所示:

Alt

故结果为:101001010.011000100

二进制与十六进制转换

二进制转十六进制

【前言】十六进制数的每一位都有十六中可能出现的数字,分别用 0~9,A,B,C,D,E,F来表示,即A=10,B=11,依次往后。。。。用字母代表数字。

转换的原理与 二-八 转换相仿。十六进制计数规则为 “逢十六进一” ,而 4 位的二进制数恰好代表 1 位十六进制数。在整数转换时,只要从20 位开始依次将每 4 位二进制数划分为一组,并分别代之以相应的十六进制数就可以了。

示例: 将(01011110.10110010)2 转换为十六进制数?

答:如下图所示

在这里插入图片描述

【注】: 如果以 4 位为一组,在划分二进制数的时候,最后不足 4 位数,则添加 0 来补全。

故结果为:5E.B2

十六进制转二进制

同理,只需要将原来的十六进制数逐位用相应的二进制数代替就可以得到所要求的二进制数。

示例: 将(8FA.C6)16 转为二进制?

答:如下图所示

在这里插入图片描述

由上图可知,结果为:100011111010.11000110

十进制、八进制、十六进制转换

十进制、八进制、十六进制间的直接转换,可以通过上面介绍的方法,以二进制为核心,实现转换。

即十进制转为八进制,可以先转为二进制,再将二进制数转为八进制,十六进制想要转为八进制,可以先把十六进制数转化为二进制,最后再把二进制转为八进制,结果不变。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐