数字电路——分析与设计 :第1章数制与编码_第1页
数字电路——分析与设计 :第1章数制与编码_第2页
数字电路——分析与设计 :第1章数制与编码_第3页
数字电路——分析与设计 :第1章数制与编码_第4页
数字电路——分析与设计 :第1章数制与编码_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、引言 电子系统(电路)一般分为模拟系统(电路)和数字系统(电路)两大类。7/17/20221北京理工大学 信息科学学院模拟系统:接收、处理、传输和再现模拟信号的系统。模拟信号:幅度在连续的时间轴上取值;幅度随时间的变化而连续地变化。7/17/20222北京理工大学 信息科学学院0 1 2 3 4 5 6 7 8 97654321tVm7/17/20223北京理工大学 信息科学学院数字系统:接收、处理、传输和再现数字信号的系统。数字信号:幅度在离散的时间轴上取值;在每个离散的时间点上幅度取离散的数值。这些离散的数值可用二进制数进行编码。7/17/20224北京理工大学 信息科学学院0 1 2 3

2、 4 5 6 7 8 97654321nTsVm0010100111001011101111101017/17/20225北京理工大学 信息科学学院模拟系统是传统的,即从电子系统诞生之日起,它就是模拟的。数字系统是近代产生的。数字系统较之模拟系统有很多优越性,归纳如下:对器件参数变化不敏感可预先决定精度较大的动态范围更适合于非线性控制对环境温度变化敏感性低可靠性高系统依据时间划分进行多路传输时,有较大灵活性系统参数基本上不随时间和温度产生漂移,系统性能始终一致数字系统的故障比模拟系统易于识别和消除7/17/20226北京理工大学 信息科学学院1.1 数制10进制的特点:逢10进1。有10个符号

3、(数字):0, 1,2,3,4,5,6,7,8,9(没有10)2进制的特点:逢2进1。有2个符号(数字):0,1(没有2)8进制的特点:逢8进1。有8个符号(数字):0,1,2,3,4,5,6,7(没有8)16进制的特点:逢16进1。有16个符号(数字):0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F(没有16)计算机上常用的数制7/17/20227北京理工大学 信息科学学院每一种数制的“逢几进1”, 这个“几”就叫作该数制的基数 , 用r表示。10进制数的基数r是10 ;2进制数的基数r是2 ;8进制数的基数r是8 ;16进制数的基数r是16 ; n进制数的基数r是n 。任意

4、数值 N 均可按某一基数 r 表示为多项式 ; 此时 N 被表示成r 进制数 , 即 :其中:r是基数(数制); n是数值 N 的整数部分的位数;m是数值 N 的小数部分的位数 ;aj 是系数。(aj :0 , 1 , , r-1) ;7/17/20228北京理工大学 信息科学学院1.2 数制间的转换1.2.1 2、8、16进制数转换为10进制数例:123(1101. 101)2=+122+021+120+12-1+02-2+12-3=(13. 625)10382(372. 5)8=+781+280+58-1=(250. 625)10 3161(3F. A)16=+F160+A16-1=(63

5、. 625)10 2、8、16进制数转换为10进制数转换的基本原则是:分别以基数2、8、16作加权展开,再计算出这个加权展开多项式的结果。7/17/20229北京理工大学 信息科学学院1.2.2 10进制数转换为2、8、16进制数1. 10进制 2进制 设:N和M分别为某10进制数的整数部分和小数部分; n和m分别为某2进制数整数部分和小数部分的位数(N、M、n和m均为整数)。则10进制数与2进制数的关系如下式所示:(N. M)10 =an-1. 2n-1 + an-2. 2n-2 + a1. 21 + a0. 20 + a-1. 2-1 + a-2. 2-2 + a-m+1. 2-m+1 +

6、 a-m. 2-m转换的基本原则是:10进制数的整数部分转换为2进制数的整数部分;10进制数的小数部分转换为2进制数的小数部分。即:(N)10 =an-1. 2n-1 + an-2. 2n-2 + a1. 21 + a0. 20 (M)10 =a-1. 2-1 +a-2. 2-2 + a-m+1. 2-m+1 + a-m. 2-m7/17/202210北京理工大学 信息科学学院例1-1:把10进制数(43.625)10转换成2进制数。解: 转换整数部分:43 =a8. 28 + a7. 27 + a6. 26 + a5. 25 + a4. 24 + a3. 23 + a2. 22 +a1. 2

7、1 + a0. 20 (1)偶数由(1)式知:43为奇数,a8a1各项和为偶数,a0只取0或1。 a0=1。(1)式等号两边分别减去 a0=1,再分别除以2得: =a8. 27 + a7. 26 + a6. 25 + a5. 24 + a4. 23 + a3. 22 + a2. 21 +a1=21 (2)偶数由(2)式知:21为奇数,a8a2各项和为偶数,a1只取0或1。 a1=1。(2)式等号两边分别减去 a1=1,再分别除以2得: =a8. 26 + a7. 25 + a6. 24 + a5. 23 + a4. 22 + a3. 21 + a2=10 (3)偶数由(3)式知:10为偶数,a

8、8a3各项和为偶数,a2只取0或1。 a2=0。取1或0取1或0取1或07/17/202211北京理工大学 信息科学学院 转换小数部分:0.625 =a-1. 2-1 +a-2. 2-2 + a-3. 2-3 + a-m+1. 2-m+1 + a-m. 2-m (1)(1) 式等号两边乘以2得到: 1.25 = a-1 +a-2. 2-1 + a-3. 2-2 + a-m+1. 2-m+2 + a-m. 2-m+1 (2)仿照上面的做法继续做下去,得到: a3=1; a4=0; a5=1。 a5 a4 a3 a2 a1 a0=(101011)2 (43)10=(101011)2整数部分小数部分

9、整数部分取1或0小数部分 余数 系数 2 4342 1 a0 2 2120 1 a1 2 1010 0 a2 2 54 1 a3 2 22 0 a4 2 10 1 a5 0由(2)式知:等号两边的整数部分和小数部分应分别相等。a-1=1。(2)式等号两边分别减去a-1 =1,再分别乘以2得到:0.252 = a-2 + a-3. 2-1 + a-m+1. 2-m+3 + a-m. 2-m+2 =0. 5 (3)小数部分整数部分小数部分整数部分取1或0由(3)式知:等号两边的整数部分和小数部分应分别相等。a-2=0。(3)式等号两边分别减去a-2 =0,再分别乘以2得到:0. 52 = a-3

10、+ a-m+1. 2-m+4 + a-m. 2-m+3 =1. 0 (4)7/17/202212北京理工大学 信息科学学院1. 0 = a-3 + a-m+1. 2-m+4 + a-m. 2-m+3 (4)整数部分小数部分整数部分取1或0小数部分由(4)式知:等号两边的整数部分和小数部分应分别相等, a-3=1。 a-1 a-2 a-3 =101;即: (0.625)10 =(0.101)2 0.625 乘积之整数 系数 2 1.250 1 a-1 0.25 2 0.50 0 a-2 0.50 2 1.0 1 a-3综合、 的结果 :(43.625)10 =(101011.101)2注意:小数

11、部分的转换有可能进行不完,即不能用有限位的二进制小数来表示一个十进制小数。此时要根据精度要求进行取舍(确定二进制小数的位数)。10进制数 2进制数的简便方法:熟记若干 2k 的数值(k:-410),即:201;212;224;238;2416;2532;2664;27128;28256;29512;2101024;2-10. 5;2-20.25;2-30.125;2-40.0625; 7/17/202213北京理工大学 信息科学学院(43)10 2进制数整数:4332(25)11 a51118(23)3 a3132(21)1 a1111(20)0 a01 a51; a31; a11; a01。

12、 a20; a40。 a5a4a3a2a1a0101011(0.625)10 2进制数整数:0.6250.5(2-1)0.125 a-110.1250.125(2-3)0 a-31 a-11; a-31。 a-20。 a-1a-2a-3101 (43.625)10 (101011.101)22. 10进制 8进制、16进制 转换方法:先由10进制转换为2进制,再由2进制转换为8进制或16进制。 10进制数 2进制数8进制数16进制数7/17/202214北京理工大学 信息科学学院1.2.3 2、8、16进制数之间的转换1. 2进制 8进制 因为23=8。所以每三位二进制数就是一位八进制数,如右

13、表所示。 例:(1 1 0 1 0 0 1 . 1 1 1)2 =( 1 5 1 . 7) 81 5 1 7转换方法:从小数点开始,分别向左、右方向每三位一组地划分二进制数;然后把每三位一组的二进制数作为一位八进制数。7/17/202215北京理工大学 信息科学学院2. 2进制 16进制 因为24=16。所以每四位二进制数就是一位十六进制数,如右表所示。例:(1 1 0 1 0 0 1 . 1 1 1)2 =( 6 9 . E)166 9 E转换方法:从小数点开始,分别向左、右方向每四位一组地划分二进制数;然后把每四位一组的二进制数作为一位十六进制数。7/17/202216北京理工大学 信息科

14、学学院3. 8进制,16进制 2进制转换方法与二进制数转换为八进制数或十六进制数的过程相反。关键是由1位八进制数写出3位二进制数或由1位十六进制数写出4位二进制数。( 7 5 3 . 4 )8 =( 1 1 1 1 0 1 0 1 1 . 1 0 0 ) 2例:111 101 011 100( 3 F C . B )16 =( 0 0 1 1 1 1 1 1 1 1 0 0 . 1 0 1 1 ) 20011 1111 1100 1011可不写可不写7/17/202217北京理工大学 信息科学学院1.3 二进制符号数的表示方法1.3.1 符号数的原码表示法用原码表示带符号的二进制数时,必须首先

15、规定原码的位数。所谓符号数的n位原码表示法,就是用1位二进制数表示符号:0表示正数,1表示负数,符号位放在最高位(第n-1位)。而数的大小则以该数绝对值的n-1位自然二进制数表示。7/17/202218北京理工大学 信息科学学院假设某数字系统中用8位存储器存放数据,其中最高位为符号位,其余7位表示数的绝对值。例如:(+ 37)10= (+ 0100101)2= (0 0100101)原.8 (+ 0)10 = (+ 0000000)2 = (0 0000000)原.8 ( 37)10= ( 0100101)2= (1 0100101)原.8 ( 0)10 = ( 0000000)2 = (1

16、0000000)原.8(+ 127)10 = (+ 1111111)2 = (0 1111111)原.8( 127)10 = ( 1111111)2 = (1 1111111)原.8以上例子说明:n位原码表示法所能表示的十进制数的范围为(2n11) +(2n11),其中0有两种表示形式:+0和0。 原码表示法不适合于在数字系统中运算,因此极少采用。 7/17/202219北京理工大学 信息科学学院1.3.2 符号数的反码表示法 1. 反码的定义与求法 对一个n位二进制数码逐位取反(“1”变为“0”、“0”变为“1”)后所得到的新二进制数码称为原二进制数码的反码。由反码的定义知。若A为B的反码,

17、则B亦为A的反码。 A、B互为反码。7/17/202220北京理工大学 信息科学学院用反码表示带符号的二进制数时,必须首先规定反码的位数。所谓符号数的n位反码表示法,就是用1位二进制数表示符号:0表示正数,1表示负数;符号位放在最高位(第n-1位)。其余n-1位表示数的大小。正数的大小用其相应的n-1位自然二进制数码表示,而负数的大小则以该负数绝对值的n-1位自然二进制数码的反码表示。 2. 符号数的反码表示法 7/17/202221北京理工大学 信息科学学院符号数的n位反码表示法的另一种表述是:正数的反码表示就是它的原码表示,换句话说,正数的反码表示与原码表示是一样的;而负数的反码表示则是其

18、绝对值(或相应正数)的原码表示的反码。 注意:在求负数绝对值的原码表示的反码时,符号位要参与求反运算。7/17/202222北京理工大学 信息科学学院假设某数字系统中用8位存储器存放数据,其中最高位为符号位,其余7位存放数的大小。例如:(+ 37)10 = (+ 0100101)2 = (0 0100101)反.8( 37)10 = ( 0100101)2 = (1 1011010) 反.8(+ 0)10 = (+ 0000000)2 = (0 0000000) 反.8( 0)10 = ( 0000000)2 = (1 1111111) 反.8(+ 127)10 = (+ 1111111)2

19、= (0 1111111) 反.8( 127)10 = ( 1111111)2 = (1 0000000)反.8 7/17/202223北京理工大学 信息科学学院以上例子说明n位反码表示法具有如下特点:反码表示法在数字系统中也很少采用,引入他的目的是为后面要介绍的带符号数的补码表示法作准备。 反码表示法所表示的十进制数的范围为(2n-11) +(2n-11)。 反码表示法有两种0,即:+0和0。 当最高位(符号位)为0(即正数)时,反码后面的n-1位二进制数码为正数的数值部分。 当最高位(符号位)为1(即负数)时,反码后面的n-1位二进制数码不代表负数的绝对数值,需将它们按位取反后才表示负数的

20、二进制绝对数值。 7/17/202224北京理工大学 信息科学学院1.3.3 符号数的补码表示法1. 补码的定义 说到补码,必须首先规定它的位数。k位补码的定义如下: 设数N为有n位整数、m位小数的二进制数,则N的k位补码定义为: ( N )补.k = 2k N (kn) 由定义可知:N的补码与N的大小有关,还与位数k有关。 2k叫做补码的模。 7/17/202225北京理工大学 信息科学学院【例1.3.1】 (11001)补.8 = 28 11001【例1.3.2】 (11001.0101)补.8 = 28 - 11001.0101 100000000) 11001 11100111 100

21、000000.0000) 11001.0101 11100110.1011= 11100111= 11100110.10117/17/202226北京理工大学 信息科学学院解:因为补码与位数k有关,故先将数N补齐为8位:N=00010001 对N逐位求反:11101110 将求反后的数加1得:11101111 所以,( 10001 )补.8 = 11101111 【例1.3.3】 求二进制数N=10001的补码,设补码位数k=8位。 方法一:将待求补码的二进制数补足k位后,再逐位求反,且在最低位加1即得其补码。 2. 补码的求法 7/17/202227北京理工大学 信息科学学院方法二:将待求补

22、码的二进制数补足k位后,从右往左数第一个1及其右边的0不变,其余各位求反即得N的补码。 【例1.3.4】求二进制数N=10010的补码,补码位数k=8位。 解:因为补码与位数k有关,故先将数N补齐为8位: N = 00010010 = 000100 10 所以 ( N )补.8 = 111011 10最右边一个1及其右边的0不变,其他各位求反。 7/17/202228北京理工大学 信息科学学院注意:如果所给二进制数带有小数部分,则应首先将其整数部分补齐为k位,后续步骤与方法一、二均相同。注意:无论是“最低位加1” 还是“从最右端往左数第一个1” ,都是在小数部分进行的。 7/17/202229

23、北京理工大学 信息科学学院【例1.3.5】求二进制数N=11001.0101的补码,补码位数k=8位。 解:先将数N的整数部分补齐为8位: N = 11001.0101 = 00011001.0101 ( N )反.8 = 11100110.1010 在( N )反.8的小数部分最低位上加1于是,( N )补.8 = 11100110.1011 7/17/202230北京理工大学 信息科学学院或者:N = 00011001.0101 = 00011001.010 1 于是,( N )补.8 = 11100110.101 1 小数部分最右边的第一个1保持不变,其他各位求反。 7/17/20223

24、1北京理工大学 信息科学学院3. 符号数的补码表示法 所谓符号数的k位补码表示法,就是用1位二进制数表示符号:0表示正数,1表示负数;符号位放在最高位(k-1位);其余k-1位表示数的大小。正数的大小用其相应的k-1位自然二进制数码表示,而负数的大小则以其绝对值的k-1位自然二进制数码的补码表示。注意:在求负数绝对值的k-1位自然二进制数的补码时,如果次高位(k-2位)向符号位(k-1位)有进位,则该进位要进到符号位上去,即:不能丢掉次高位(k-2位)所产生的进位。7/17/202232北京理工大学 信息科学学院符号数的k位补码表示法的另一种表述是:正数的补码表示就是它的原码表示,换句话说,正

25、数的补码表示与原码表示是一样的;而负数的补码表示则是其绝对值(或相应正数)的原码表示的补码。 注意:在求负数绝对值的原码表示的补码时,符号位要参与运算(求反运算)。而且次高位(k-2位)所产生的进位要进到符号位(k-1位)上去。 7/17/202233北京理工大学 信息科学学院假如某数字系统中用8位存储器存放数据,其中最高位为符号位,其余各位存放数的大小。例如:(+ 37)10 = (+ 0100101)2 = (0 0100101)补.8( 37)10 = ( 0100101)2 = (1 1011011) 补.8 (+ 0)10 = (+ 0000000)2 = (0 0000000) 补

26、.8( 0)10 = ( 0000000)2 = (0 0000000) 补.8 (+ 127)10 = (+ 1111111)2 = (0 1111111) 补.8( 127)10 = ( 1111111)2 = (1 0000001) 补.8 ( 128)10 = ( 10000000)2 = (1 0000000) 补.8 7/17/202234北京理工大学 信息科学学院上述例子说明k位补码的符号数表示法具有如下特点:补码的+0和0一样,都是全0;k位符号数的补码表示法所能表示的十进制数的范围是:2k1 +(2k11)。 k位补码表示法所表示的最小负数,2k1,是一个特殊的补码。它的最高

27、位既是符号位,也是数值位的一部分。 当最高位(符号位)为0(即正数)时,补码后面的k-1位二进制数码为正数的数值部分。 当最高位(符号位)为1(即负数)时,补码后面的k-1位二进制数码不代表负数的绝对数值。负数的数值(绝对值)是对该负数的补码表示再求一次补码(连同符号位)后所得到的二进制数值。 7/17/202235北京理工大学 信息科学学院符号数的n位原码、反码、补码表示法总结:正数的n位原码表示、反码表示、补码表示都是一样的。正数的n位原码表示、反码表示、补码表示的结构都是:最高位(n-1位)是符号位且为0;符号位后面的n-1位是表示正数数值的自然二进制数码。负数的n位原码表示、反码表示、

28、补码表示都各不相同。负数的n位原码表示是由其相应正数的n位原码表示在最高位(符号位)取反而得到。负数的n位反码表示是由其相应正数的n位反码表示(原码表示)逐位取反(包括符号位)而得到。7/17/202236北京理工大学 信息科学学院符号数的n位原码、反码、补码表示法总结(续1):负数的n位补码表示是由其相应正数的n位补码(原码)表示逐位取反(包括符号位)、再在最低位上加1而得到。负数的n位原码表示符号位后的n-1位二进制数码代表该负数的数值(绝对值)。负数的n位反码表示、补码表示符号位后的n-1位二进制数码不代表该负数的数值(绝对值)。对负数的n位反码表示再取反码(包括符号位)后,所得到的二进

29、制数码代表该负数的数值(绝对值)。对负数的n位补码表示再取补码(包括符号位)后,所得到的二进制数码代表该负数的数值(绝对值)。7/17/202237北京理工大学 信息科学学院符号数的n位原码、反码、补码表示法总结(续2):带有小数部分的符号数,其n位原码表示、反码表示和补码表示中的n是指符号数的整数部分的位数(包括符号位),n中不包括小数部分的位数。带有小数部分的符号数,其n位原码表示、反码表示和补码表示的求法与纯整数符号数的n位原码表示、反码表示和补码表示的求法相同,它们的意义也相同。作业1:1-1,1-2,1-3,1-4,1-5,1-6,1-7,1-87/17/202238北京理工大学 信

30、息科学学院设有两个k位的二进制正数N10和N20。则N1、N2的k位补码表示分别为:(N1)补.k= 2k N1,(N2)补.k = 2k N2。 在k位加法器(模为2k)中进行加减运算时共有如下四种情况: 1. N1+N2 就是两个正数相加,结果为正数; 在进行两个二进制正数的减法运算时,可用加上减数的补码来代替减法运算。现在证明如下:7/17/202239北京理工大学 信息科学学院2. N1N2=N1+(2k N2)= 2k (N2 N1),若N2N1则N1N20,结果为负数。而2k (N2N1)就是负数(N2 N1)的补码表示,即负数N1N2的补码表示;若N20,结果为正数。而2k (N

31、2N1) =2k +(N1N2)=N1N2,所以结果就是正数N1N2;3. N2N1,情况与N1 N2类似; 4. N1N2 =(2k N1)+(2k N2) =2k +2k (N1+N2)=2k (N1+N2)。 而2k (N1+N2)就是负数(N1+N2)的补码表示,即负数N1N2的补码表示。 7/17/202240北京理工大学 信息科学学院在二进制数制中用“求反加1”的方法获得补码的意义实际上在任意的数制系统中,在规定了一定的模数(M)大小的情况下,当进行两个正数的减法运算时,都可以用被减数加上减数关于模M的补码的加法运算代替被减数减去减数的减法运算。例如:设模为M=100,求:19 1

32、2 = ?(12)100补 = 100 12 = 8819 12 = 19 +(12)100补= 19 + 88= 107 = 100 + 7 = 77/17/202241北京理工大学 信息科学学院根据补码的定义,在求补码的过程中还是要进行减法运算(模M减去减数)。在二进制数制系统中,可以用“求反加1”的方法来获得补码。对一个k位的二进制码逐位求反(求反码),实际上是在求这个k位二进制码关于模为2k-1的补码(称为“1补码”)。所以某些书上亦称“反码”为“1补码”。上述原因正是在计算机等数字系统中使用二进制数制的原因之一。将这个“1补码”加1之后,就得到了k位二进制码关于模为2k的补码。“求反

33、”运算是数字系统中最擅长的一种运算。这样就彻底绕开了求补码过程中的减法运算。7/17/202242北京理工大学 信息科学学院按照上面符号数的k位补码表示法的第二种表述则有:在数字系统(比如说计算机)中,所有的数,无论正、负,均以其补码表示的形式出现。所有数的加、减运算都可以看成是求它们的代数和。于是,所有的减法运算就都变成了加法运算。这就是使用补码表示带符号二进制数的意义所在。注意:运用符号数的“补码表示”进行代数和运算时,符号位一起参与运算,所得到的结果( “和”或“差”)亦为其“补码表示”。最高位为“0”,代表结果为正数;最高位为“1”,代表结果为负数。负数的绝对值为该负数的“补码表示”的

34、补码。7/17/202243北京理工大学 信息科学学院A+B=00100000 00010011+ 00001101 00100000-A+B=11111010 11101101+ 00001101 11111010A-B=00000110 00010011+ 11110011 100000110-A-B=11100000 11101101+ 11110011 111100000【例1.3.6】设k=8,有两个正数A=10011,B=1101,试用补码表示求A+B, A-B, B-A, -A-B。 解:(A)补.8=00010011, (B)补.8=00001101 (-A)补.8=11101

35、101, (-B)补.8=11110011 对于k=8的情况,当然运算结果不能超出8位“补码表示”所能表示的数值范围(+127 -128),否则会产生所谓的溢出,即运算结果发生错误。 7/17/202244北京理工大学 信息科学学院【例1.3.7】设k=8,有两个正数A=110011,B=1101101。试用补码表示求A+B,A-B, B-A,-A-B。 解: (A)补.8=00110011, (B)补.8=01101101 (-A)补.8=11001101, (-B)补.8=10010011 A+B=10100000 00110011+ 01101101 10100000A-B=110001

36、10 00110011+ 10010011 11000110-A-B=01100000 11001101+ 10010011 101100000-A+B=00111010 11001101+ 01101101 1001110107/17/202245北京理工大学 信息科学学院利用符号数的k位补码表示进行两个正数A、B的加、减运算时:如果参与运算的两个数的绝对值之和大于k位补码表示所能表示的正数的范围(2k-1-1),则A+B的运算结果就会发生错误。如果参与运算的两个数的绝对值之和的负值小于k位补码表示所能表示的负数的范围(-2k-1),则-A-B的运算结果就会发生错误。上述两类错误称为溢出错误

37、。溢出错误只能发生在两个“加数”的符号位相同时。 7/17/202246北京理工大学 信息科学学院两个正数相加:当第k-1位(符号位)和第k-2位(最高数字位)不同时无进位时有溢出发生。两个负数相加:当第k-1位(符号位)和第k-2位(最高数字位)不同时有进位时有溢出发生。设计加法器时可根据这个原理设计溢出指示电路。 判断产生溢出错误的方法:两个正数相加:当第k-2位(最高数字位)产生进位时有溢出发生。两个负数相加:当第k-2位(最高数字位)不产生进位时有溢出发生。或者:7/17/202247北京理工大学 信息科学学院1.4 二-十进制编码(BCD码) 定义:用以表示一位十进制数字的四位二进制

38、编码称为BCD码 。四位二进制数共有16个码字(00001111)。所以可从中任意取10个码字来代表一位十进制数的10个符号(09)。每次从四位二进制数的16个码字中任取10个不同的码字来代表一位十进制数的10个符号的过程就产生了一种BCD码。所以从理论讲,BCD码共有 种。这是一个从16个元素中任取10个不同元素的排列问题。7/17/202248北京理工大学 信息科学学院表1.3 常用BCD编码7/17/202249北京理工大学 信息科学学院BCD码的分类:有权码:四位二进制数所构成的BCD码中的每一位均代表一个固定的权重。无权码:四位二进制数所构成的BCD码中的每一位均不代表特定的权重。8

39、421码、5421码、2421码等都是有权码。8421码各位的权重分别为:8,4,2和1。余3码、循环余3码就是无权码。有效码/无效码:在某一种BCD码方案中,被采用的四位二进制数码字叫做有效码;而未被采用的码字叫做无效码。7/17/202250北京理工大学 信息科学学院BCD码的计算:【例1.4.1】求(689)10的8421码、5421码、2421码、余3码和循环余3码。 解:(682)10 =(0110 1000 0010)8421=(1001 1011 0010)5421=(1100 1110 0010)2421=(1001 1011 0101)余3=(1101 1110 0111)循

40、环余37/17/202251北京理工大学 信息科学学院【例1.4.2】 求(0010 0001 0110)8421+ (0011 1001 0011)8421=? 0010 0001 0110+) 0011 1001 0011 0101 1010 1001+) 0000 0110 0000 0110 0000 1001(0010 0001 0110)8421+ (0011 1001 0011)8421 =( 0110 0000 1001)8421当8421BCD码的运算结果是无效码时要进行加6处理,这叫做十进制调整。7/17/202252北京理工大学 信息科学学院1.5 格雷(Gray)码格雷

41、码的特点:相邻码字之间只有一位(1 bit)不同,其他位均相同 。格雷码的这个特点使得在对其进行译码时不会产生译码噪声 。格雷码的结构:由表1.4可以看出,格雷码的最高位以7、8间的中线为轴互反(上0下1);而低位则以此线为轴对称。据此可由n位格雷码方便地写出n+1位格雷码。 7/17/202253北京理工大学 信息科学学院表1.4 四位格雷码7/17/202254北京理工大学 信息科学学院例如:一位格雷码:0 两位格雷码:00 三位格雷码:000 四位格雷码: 1 01 001 11 011 10 010 110 111 101 1007/17/202255北京理工大学 信息科学学院二进制码

42、与格雷码的相互转换:二进制码转换为格雷码:设给定二进制码为Bn-1B2B1B0,它所对应的格雷码为Gn-1G2G1G0,则可由下式求出格雷码的各位: Gn-1=Bn-1,Gi=Bi+1Bi 式中:i=n-2, n-3, , 2, 1, 0 所以所求格雷码为1110。【例1.26】试写出对应二进制码1011的格雷码。解: 1 0 1 11 1 1 07/17/202256北京理工大学 信息科学学院格雷码转换为二进制码:若给定格雷码Gn-1G2G1G0,则它所对应的二进制码Bn-1B2B1B0可按下式求得: Bn-1= Gn-1,Bi=Bi+1Gi 式中i=n-2, n-3,2,1,0【例1.27】试写出对应格雷

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论