十进制转任意进制的通用方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

十进制转任意进制的通用方法是:除x取余倒排法(x代表进制数)。

如:将十进制数76转换成任意进制

1.转成二进制

76 / 2 0

= 38 / 2 0

= 19 / 2 (1)

= 9 / 2 (1)

= 4 / 2 0

= 2 / 2 0

= 1 / 2 (1)

76(10) = 1001100(2)

2.转成八进制

76 / 8 (4)

= 9 / 8 (1)

= 1 / 8 (1)

76(10) = 114(8)

3.转成十六进制

76 / 16 (12)

= 4 / 16 (4)

76(10)=4C(16)

B :二进制数。

Q :八进制数。

D :十进制数。

H :十六进制数。

对于十进制数通常不加后缀,也即十进制数后的字母 D 可省略。

( 1 )将二进制数转换成对应的十进制数

将二进制数转换成对应的十进制数的方法是“按权展开求和”:

利用二进制数按权展开的多项式之和的表达式,取基数为 2 ,逐项相加,其和就是对应的十进制数。

例 1 :将二进制数 1011.1 转换成对应的十进制

解:1011.1B=1×2的3次方+0×2的2次方+1×2的1次方+1×2的0次方+1×2的-1次方

=8+0+2+1+0.5

=11.5D

(2 )将二进制数转换为对应的八进制数

由于 1 位八进制数对应 3 位二进制数,所以二进制数转换成八进制数时,只要以小数点为界,整数部分向左,小数部分向右每 3 位分成一组,各组用对

应的 1 位八进制数字表示,即可得到对应的八进制数值。最左最右端分组不足 3 位时,可用 0 补足。

例:将 1101101.10101B 转换成对应的八进制数。

解:

所以, 1101101.10101B = 155.52Q 。

同理,用相反的方法可以将八进制数转换成对应的二进制数。

(3 )将二进制数转为对应的十六进制数

由于 1 位十六进制数对应 4 位二进制数,所以二进制数转换为十六进制时,只要以小数点为界,整数部分向左,小数部分向右每 4 位分成一组,各组用对应的 1 位十六进制数字表示,即可得到对应的十六进制数值。两端的分组不足 4 位时,用 0 补足。

例:将 1101101.10101B 转换成对应的十六进制数

解:

所以 1101101.10101B = 6D.8AH 。

同理,用相反的方法可以将十六进制数转换成对应的二进制数。

计算机中常用的数的进制主要有:二进制、八进制、十六进制,学习计算机要对其有所了解。

2进制,用两个阿拉伯数字:0、1;

8进制,用八个阿拉伯数字:0、1、2、3、4、5、6、7;

10进制,用十个阿拉伯数字:0到9;

16进制就是逢16进1,但我们只有0~9这十个数字,所以我们用A,B,C,D,E,F这五个字母来分别表示10,11,12,13,14,15。字母不区分大小写。

以下简介各种进制之间的转换方法:

一、二进制转换十进制

例:二进制“1101100”

1101100 ←二进制数

6543210 ←排位方法

例如二进制换算十进制的算法:

1*26 + 1*25 + 0*24 + 1*23 + 1* 22 + 0*21 + 0*20

↑ ↑

说明:2代表进制,后面的数是次方(从右往左数,以0开始)

=64+32+0+8+4+0+0

=108

二、二进制换算八进制

例:二进制的“10110111011”

换八进制时,从右到左,三位一组,不够补0,即成了:

010 110 111 011

然后每组中的3个数分别对应4、2、1的状态,然后将为状态为1的相加,如:010 = 2

110 = 4+2 = 6

111 = 4+2+1 = 7

011 = 2+1 = 3

结果为:2673

三、二进制转换十六进制

十六进制换二进制的方法也类似,只要每组4位,分别对应8、4、2、1就行了,如分解为:

0101 1011 1011

运算为:

0101 = 4+1 = 5

1011 = 8+2+1 = 11(由于10为A,所以11即B)

1011 = 8+2+1 = 11(由于10为A,所以11即B)

结果为:5BB

四、二进制数转换为十进制数

二进制数第0位的权值是2的0次方,第1位的权值是2的1次方……

所以,设有一个二进制数:0110 0100,转换为10进制为:

计算: 0 * 20 + 0 * 21 + 1 * 22 + 0 * 23 + 0 * 24 + 1 * 25 + 1 * 26 + 0 * 27 = 100

五、八进制数转换为十进制数

八进制就是逢8进1。

八进制数采用 0~7这八数来表达一个数。

八进制数第0位的权值为8的0次方,第1位权值为8的1次方,第2位权值为8的2次方……

所以,设有一个八进制数:1507,转换为十进制为:

计算: 7 * 80 + 0 * 81 + 5 * 82 + 1 * 83 = 839

结果是,八进制数 1507 转换成十进制数为 839

六、十六进制转换十进制

例:2AF5换算成10进制

直接计算就是: 5 * 160 + F * 161 + A * 162 + 2 * 163 = 10997

(别忘了,在上面的计算中,A表示10,而F表示15)、

现在可以看出,所有进制换算成10进制,关键在于各自的权值不同。

相关文档
最新文档