《数制及其转换练习》由会员分享,可在线阅读,更多相关《数制及其转换练习(42页珍藏版)》请在金锄头文库上搜索。
1、第一章第一章第一章第一章数制及其数制及其数制及其数制及其转换转换数制数制数制数制(Number SystemNumber System)l人们常用一组符号并根据一定的规则来表示数值的人们常用一组符号并根据一定的规则来表示数值的大小,这些符号和规则构成了不同的进位计数制,大小,这些符号和规则构成了不同的进位计数制,简称数制。简称数制。l基数是指计数制中所用到的数字符号的个数。基数是指计数制中所用到的数字符号的个数。 l位权是指在一种进位计数制表示的数中,用来表明位权是指在一种进位计数制表示的数中,用来表明不同数位上数值大小的一个固定常数。不同数位上数值大小的一个固定常数。 数的表示方法数的表示方
2、法数的表示方法数的表示方法 l位置计数法位置计数法 l多项式表示法多项式表示法 十十进制制(Decimal)l任意十进制数任意十进制数D可以表示成可以表示成 l【例例】十进制数十进制数2004.98可以表示为可以表示为 二二进制制(Binary)l任意二进制数任意二进制数B可以表示成可以表示成 l【例例】二进制数二进制数11010.11可以表示为可以表示为 二二进制运算制运算规则 八八进制制(Octal )l任意八进制数任意八进制数C可以表示成可以表示成 l【例例】八进制数八进制数204.53可以表示为可以表示为 十六十六进制制(Hexadecimal)l任意十六进制数任意十六进制数H可以表示
3、成可以表示成 l【例例】十六进制数十六进制数2EB5.C9可以表示为可以表示为 十十进制与二、八、十六制与二、八、十六进制数制数对照表照表 二、八、十六二、八、十六进制制十十进制制l【例例】将二进制数将二进制数11010.11转换成十进制数。转换成十进制数。 l【例例】将八进制数将八进制数204.5转换成十进制数。转换成十进制数。 l【例例】将十六进制数将十六进制数EB5.C转换成十进制数。转换成十进制数。 十十进制制二、八、十六二、八、十六进制制 l整数转换(基数除法整数转换(基数除法 )l【例例】将十进制数将十进制数45转换为二进制数。转换为二进制数。 即即(45)10 = (101101
4、)2。 十十进制制二、八、十六二、八、十六进制制l小数转换(基数乘法小数转换(基数乘法 )l【例例】将十进制数将十进制数0.3125转换成二进制小数。转换成二进制小数。 即即(0.3125)10 = (0.0101)2 。二二进制制八、十六八、十六进制制(n分法)分法)l【例例】将二进制数将二进制数111.1111001分别转换成八进制分别转换成八进制和十六进制数。和十六进制数。 即即(111.1111001)2 = (26153.744)8; 即即(111.1111001)2 = (2C6B.F2)16。 八、十六八、十六进制制二二进制制(n分法)分法) l【例例】将八进制数将八进制数673
5、.124转换成二进制数。转换成二进制数。 即即(673.124)8 = (110111011.0010101)2。 机器机器码(Machine Code)与与真真值 (Truth Value)l人们通常在数值的前面加人们通常在数值的前面加“+”+”表示正数(表示正数(“+”+”通通常也可以省略),加常也可以省略),加“-”-”表示负数。这种表示称为表示负数。这种表示称为符号数的真值。符号数的真值。 l在数字系统中,符号和数值一样是用在数字系统中,符号和数值一样是用0 0和和1 1来表示的,来表示的,一般将数的最高为作为符号位,通常用一般将数的最高为作为符号位,通常用0 0表示正,用表示正,用1
6、 1表示负。这种将符号和数值统一编码表示的二进制表示负。这种将符号和数值统一编码表示的二进制数称为机器数或机器码。常用的机器码主要有原码、数称为机器数或机器码。常用的机器码主要有原码、反码和补码三种。反码和补码三种。 原原码(True Form)l定点小数原码定义:设二进制小数定点小数原码定义:设二进制小数 X = 0.x-1x-2x-m,则其原码定义为,则其原码定义为 l【例例】求求X1 = +0.101 1001, X2 = -0.101 1001的的原码。原码。 解:解:X1原原 = 0.101 1001 X2原原 = 1(-0.101 1001) = 1+0.101 1001 = 1.
7、101 1001原原码(True Form)l整数原码的定义:设二进制整数整数原码的定义:设二进制整数 X = xn- -1xn- -2x0,则其原码定义为,则其原码定义为 l【例例】求求X1 = +100 1011,X2 = -100 1011的原码。的原码。 解:解:X1原原 = 0100 1011 X2原原 = 27 (-100 1011) = 1000 0000 + 100 1011 = 1100 1011 反反码(Negative Number)l定点小数反码的定义:设二进制小数定点小数反码的定义:设二进制小数 X = 0.x-1x-2x-m,则其反码定义为,则其反码定义为l【例例】
8、求求X1 = +0.101 1001,X2 = -0.101 1001的反的反码。码。l解:解:X1反反 = 0.1011001 X2反反 = 2+(-0.101 1001) 2-7 = 10 0.101 1001 0.000 0001 = 1.010 0110 反反码(Negative Number)l整数反码的定义:设二进制整数整数反码的定义:设二进制整数 X = xn- -1xn- -2x0,则其反码定义为,则其反码定义为l【例例】求求X1 = +100 1011,X2 = -100 1011的反码。的反码。 解:解:X1反反 = 0100 1011 X2反反 = 28+(-100 10
9、11) 1 = 1 0000 0000 100 1011 1 = 1011 0100 补码(Complement Number) l定点小数补码定义:设二进制小数定点小数补码定义:设二进制小数 X = 0.x-1x-2x-m,则其补码定义为,则其补码定义为l【例例】求求X1 = +0.101 1001,X2 = -0.101 1001的补的补码。码。l解:解:X1补补 = 0.101 1001 X2补补 = 2+(-0.101 1001) = 10 0.1011 001 = 1.010 0111 补码(Complement Number)l整数数补码的定义:设二进制整数整数数补码的定义:设二进
10、制整数 X = xn- -1xn- -2x0,则其补码定义为,则其补码定义为l【例例】求求X1 = +100 1011,X2 = -100 1011的补码。的补码。 解:解:X1补补 = 0100 1011 X2补补 = 28 + (-100 1011) = 1 0000 0000 100 1011 = 1011 0101 原原码运算运算 l【例例】求求Z X Y。其中。其中X+101 1010,Y+001 1001。l解:解:X原原 = 0101 1010,Y原原 = 0001 1001即即Z原原 = 0100 0001,其真值为,其真值为 Z = +100 0001。反反码运算运算 lX反
11、反 = 0101 1010-Y反反 = 1110 0110即即Z反反 = 0100 0001,其真值为,其真值为 Z = +100 0001。 补码运算运算 lX补补 = 0101 1010 -Y补补 = 1110 0111即即Z补补 = 0100 0001,其真值为,其真值为 Z = +100 0001。BCD码(Binary Coded Decimal)l将每个十进制数用将每个十进制数用4位二进制数表示,且指定按序排位二进制数表示,且指定按序排列的二进制数的前十种代码依次表示十进制数的列的二进制数的前十种代码依次表示十进制数的09。lN = 8x3+4x2+2x1+x0 l【例例】求求84
12、21BCD码码0101对应的十进制数。对应的十进制数。 解:解:8421BCD码码0101的按权展开式为:的按权展开式为: N = 80+41+20+11 = 4+1 = 5 即即8421BCD码码0101表示十进制数表示十进制数5。余余3码(Residue 3 Code)l余余3码是另一种码是另一种BCD码,它是由码,它是由8421码加码加3后形成的。后形成的。l【例例】用余用余3码对码对(28)10进行编码。进行编码。 解:解:2、8对应的余对应的余3码分别是码分别是 0010+0011=0101,1000+0011=1011 即即(28)10 = (0101 1011)余余3。格雷码(G
13、ray Code)l在格雷码编码中,任意两个相邻的代码只有一位二在格雷码编码中,任意两个相邻的代码只有一位二进制数不同。进制数不同。l从二进制转换成格雷码的规则如下:从二进制转换成格雷码的规则如下:设二进制码为:设二进制码为:BBn- -1Bi+1BiB0,对应的格雷,对应的格雷码为码为GGn- -1Gi+1GiG0,则有,则有Gn- -1Bn- -1, GiBi+1 Bi 格雷格雷码与二与二进制制码对照表照表 格雷格雷码实例例l【例例】已知二进制码为已知二进制码为1110,求其对应的格雷码。,求其对应的格雷码。 解:解: 即二进制码即二进制码1110对应的格雷码为对应的格雷码为1001。奇偶
14、校奇偶校验码(Parity Code) l它由若干个信息位加一个校验位构成,其中校验位它由若干个信息位加一个校验位构成,其中校验位的取值(的取值(0或或1)将使整个代码中的)将使整个代码中的“1”的个数为的个数为奇数或为偶数。若奇数或为偶数。若“1”的个数为奇数则称为奇校验;的个数为奇数则称为奇校验;若若“1”的个数为偶数则称为偶校验。的个数为偶数则称为偶校验。 8421奇偶校奇偶校验码 CRC码(Cyclic Redundary Check) lCRC码中采用码中采用“模模2运算运算”,即加减无进位或借位。,即加减无进位或借位。lCRC码中引入了代码多项式的概念,即将一个二进码中引入了代码多
15、项式的概念,即将一个二进制序列与代码多项式一一对应。如:二进制序列制序列与代码多项式一一对应。如:二进制序列 1 0110 0111对应代码多项式为对应代码多项式为lCRC码是由码是由k位信息位与位信息位与r位校验位组成。最后发送位校验位组成。最后发送的码为的码为k+r阶代码多项式阶代码多项式T(x),即,即CRC码实例例l【例例】已知生成多项式为已知生成多项式为1011,设信息码为,设信息码为 1100,求其,求其CRC码。码。l解:根据题意可知:解:根据题意可知:G(x) = x3+x+1,r = 3;M(x) = x3+x2 所以所以R(x) = x,即,即10, CRC码为码为 ASC
16、II码(American StandardCode for Information Interchange) 知知识点点l模拟信号与数字信号模拟信号与数字信号l数字系统:由实现各种功能的逻辑电路互相连接构数字系统:由实现各种功能的逻辑电路互相连接构成的整体,仅仅用成的整体,仅仅用0或或1这两个数字来这两个数字来“处理处理”信息。信息。知知识点点l人们常用一组符号并根据一定的规则来表示数值的人们常用一组符号并根据一定的规则来表示数值的大小,这些符号和规则构成了不同的进位计数制,大小,这些符号和规则构成了不同的进位计数制,简称数制。简称数制。l基数基数 l权权 知知识点点l位置计数法位置计数法 l
17、多项式表示法多项式表示法 知知识点点l二、八、十六进制转换成十进制。通常采用多项式二、八、十六进制转换成十进制。通常采用多项式按权展开法比较简便。按权展开法比较简便。 l十进制转换成二、八和十六进制。十进制整数部分十进制转换成二、八和十六进制。十进制整数部分采用基数除法,对于小数部分则采用基数乘法。采用基数除法,对于小数部分则采用基数乘法。l二进制转换成八进制、十六进制。此时应以小数点二进制转换成八进制、十六进制。此时应以小数点为界,分别向左、右按为界,分别向左、右按n位进行分解位进行分解 (n分法)。分法)。 l八进制、十六进制向二进制转换:则可根据上述八进制、十六进制向二进制转换:则可根据
18、上述n分法的逆运算求解。分法的逆运算求解。 知知识点点l常用机器码主要有原码、反码和补码三种。常用机器码主要有原码、反码和补码三种。知知识点点lBCD码:用四位二进制代码对一位十进制数字进行码:用四位二进制代码对一位十进制数字进行编码的方法。编码的方法。l余余3码:余码:余3码是另一种的码是另一种的BCD码,是在码,是在8421码后加码后加3形成的。形成的。l格雷码:在一组数的编码中,若任意两个相邻的代格雷码:在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,这种编码称为格雷码。码只有一位二进制数不同,这种编码称为格雷码。lCRC码。码。lASCII码:码:ASCII码是一种字符编码
19、,它采用码是一种字符编码,它采用7位二位二进制编码。进制编码。精精选习题l【分析分析】:此题要求根据:此题要求根据8421BCD码的编码规则,码的编码规则,把十进制数的每一位用四位二进制表示,且指定把十进制数的每一位用四位二进制表示,且指定按序排列的二进制数的前按序排列的二进制数的前10种代码依次表示十进种代码依次表示十进制数的制数的09。l【解解】: 精精选习题l在一个在一个6位数值系统中,位数值系统中,(-10)10的原码是(的原码是( ),反),反码是(码是( ),补码是(),补码是( ););(10)10 的原码是(的原码是( ),),反码是(反码是( ),补码是(),补码是( )。)。 l【解解】