信息技术基础(第2版)
上QQ阅读APP看书,第一时间看更新

1.2.4 进制之间的转换

1.常用数制的表示方法

(1)十进制

我们最熟悉、最常用的是十进位计数制,简称十进制,它是由0~9共10个数字组成,即基数为10。十进制具有“逢十进一”的进位规律。

任何一个十进制数都可以表示成按权展开式。例如,十进制数95.31可以写成:

(95.31)10=9×101+5×100+3×10-1+1×10-2

其中,101、100、10-1、10-2为该十进制数在十位、个位、十分位和百分位上的权。

(2)二进制

与十进制数相似,二进制中只有0和1两个数字,即基数为2。二进制具有“逢二进一”的进位规律。在计算机内部,一切信息的存放、处理和传送都采用二进制的形式。

任何一个二进制数也可以表示成按权展开式。例如,二进制数1101.101可写成:

(1101.101)2=1×23+1×22+0×21+1×20+1×2-1+0×2-2+1×2-3

(3)八进制

八进位记数制(简称八进制)的基数为8,使用8个数码,即0,1,2,3,4,5,6,7表示数,低位向高位进位的规则是“逢八进一”。

(4)十六进制

十六进位记数制(简称十六进制)的基数为16,使用16个数码,即0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F表示数。这里借用A、B、C、D、E、F作为数码,分别代表十进制中的10、11、12、13、14、15。低位向高位进位的规则是“逢十六进一”。

表1-1列出了常用的几种进位制对同一个数值的表示。

表1-1 几种常用进位制数值对照表

续表

2.十进制数转换为二进制数

(1)整数部分的转换

整数部分的转换采用的是除2取余法,直到商为0,余数按倒序排列,称为“倒序法”。

例1:将(126)10转换成二进制数。

结果为:(126)10=(1111110)2

(2)小数部分的转换

小数部分的转换采用乘2取整法,直到小数部分为0,整数按顺序排列,称为“顺序法”。

例2:将十进制数(0.534)10转换成相应的二进制数。

结果为:(0.534)10≈(0.10001)2,显然(0.534)10不能用二进制数精确地表示。

例3:将(50.25)10转换成二进制数。

分析:对于这种既有整数又有小数部分的十进制数,可将其整数和小数分别转换成二进制数,然后再把两者连接起来即可。

因为(50)10=(110010)2,(0.25)10=(0.01)2

所以(50.25)10=(110010.01)2

3.十进制数转换为八进制数

(1)整数部分的转换

整数部分的转换采用的是除8取余法,直到商为0,余数按倒序排列,称为“倒序法”。

(2)小数部分的转换

小数部分的转换采用乘8取整法,直到小数部分为0,整数按顺序排列,称为“顺序法”。

例4:将(50.25)10=(62.2)8

4.十进制数转换为十六进制数

(1)整数部分的转换

整数部分的转换采用的是除16取余法,直到商为0,余数按倒序排列,称为“倒序法”。

(2)小数部分的转换

小数部分的转换采用乘16取整法,直到小数部分为0,整数按顺序排列,称为“顺序法”。

例5:将(50.25)10=(32.4)16

5.二进制数、八进制数、十六进制数转换为十进制数

(1)二进制数转换成十进制数

转换方法是将二进制数以2为基数按权展开并相加。

例6:(1101100.111)2=1×26+1×25+1×23+1×22+1×2-1+1×2-2+1×2-3

=64+32+8+4+0.5+0.25+0.125=(108.875)10

(2)八进制数转换成十进制数

转换方法是以8为基数按权展开并相加。

例7:(652.34)8=6×82+5×81+2×80+3×8-1+4×8-2

=384+40+2+0.375+0.0625=(426.4375)10

(3)十六进制数转换成十进制数

转换方法是以16为基数按权展开并相加。

例8:(19BC.8)16=1×163+9×162+B×161+C×160+8×16-1

=4096+2304+176+12+0.5=(6588.5)10

6.八进制数与二进制数之间的相互转换

(1)八进制数转换为二进制数

转换原则是“1位拆3位”,即把1位八进制数对应于3位二进制数,然后按顺序连接即可。

例9:将(64.54)8转换为二进制数。

结果为:(64.54)8=(110100.101100)2

(2)二进制数转换成八进制数

二进制数转换成八进制数可概括为“3位并1位”,即从小数点开始向左右两边以每3位为一组,不足3位时补0,然后每组改成等值的1位八进制数即可。

例10:将(110111.11011)2转换成八进制数。

结果为:(110111.11011)2=(67.66)8

7.十六进制数与二进制数之间的相互转换

(1)十六进制数转换成二进制数

十六进制数转换成二进制数的转换原则是“1位拆4位”,即把1位十六进制数转换成对应的4位二进制数,然后按顺序连接即可。

例11:将(C41.BA7)16转换为二进制数。

结果为:(C41.BA7)16=(110001000001.101110100111)2

(2)二进制数转换成十六进制数

二进制数转换成十六进制数的转换原则是“4位并1位”,即从小数点开始向左右两边以每4位为一组,不足4位时补0,然后每组改成等值的1位十六进制数即可。

例12:将(1111101100.00011010)2转换成十六进制数。

结果为:(1111101100.00011010)2=(3EC.1A)16

此外,为了区分不同进制,常在数字后加一英文字母作为后缀以示区别。

(1)十进制数,在数字后面加字母D或不加字母,如(6659)10写成6659D或6659。

(2)二进制数,在数字后面加字母B,如(1101101)2写成1101101B。

(3)八进制数,在数字后面加字母O,如(1275)8写成1275O。

(4)十六进制数,在数字后面加字母H,如(CFA7)16写成CFA7H。