1、a1数字逻辑数字逻辑a2一一 概述概述a3模拟信号:在时间上和模拟信号:在时间上和数值上连续的信号。数值上连续的信号。数字信号:在时间上和数字信号:在时间上和数值上不连续的(即离数值上不连续的(即离散的)信号。散的)信号。uu模拟信号波形模拟信号波形数字信号波形数字信号波形tt对模拟信号进行传输、对模拟信号进行传输、处理的电子线路称为处理的电子线路称为模拟电路。模拟电路。对数字信号进行传输、对数字信号进行传输、处理的电子线路称为处理的电子线路称为数字电路。数字电路。a4典型的模拟信号为正弦信号,任一模拟信号可看分解成不同频率正弦信号的迭加。tia5计算机计算机被控对象被控对象一次仪表一次仪表执
2、行机构执行机构D/AD/A转换转换A/DA/D转换转换数字信号数字信号数字信号数字信号模拟信号模拟信号模拟模拟信号信号被测参数被测参数控制信号控制信号某控制系统的框图某控制系统的框图 a6数字逻辑电路的特点数字逻辑电路的特点(1 1)工作信号是二进制的数字信号,在时间上和数值上)工作信号是二进制的数字信号,在时间上和数值上是离散的(不连续),反映在电路上就是低电平和高电是离散的(不连续),反映在电路上就是低电平和高电平两种状态(即平两种状态(即0 0和和1 1两个逻辑值)。两个逻辑值)。(2 2)在数字电路中,研究的主要问题是电路的逻辑功能,)在数字电路中,研究的主要问题是电路的逻辑功能,即输
3、入信号的状态和输出信号的状态之间的关系。即输入信号的状态和输出信号的状态之间的关系。 (3 3)电路结构简单、功耗低、便于集成和系列化生产。)电路结构简单、功耗低、便于集成和系列化生产。(4 4)对组成数字电路的元器件的精度要求不高,只要在)对组成数字电路的元器件的精度要求不高,只要在工作时能够可靠地区分工作时能够可靠地区分0 0和和1 1两种状态即可两种状态即可a7可靠性强、抗干挠能力强、电路结构简单、功耗低、便于集成和系列化生产。数字逻辑电路的特点数字逻辑电路的特点: :标称值标称值0.3V0.3V允许低于允许低于0.8V0.8V标称值标称值3.6V3.6V允许高于允许高于2.4V2.4V
4、a8 1 1、数字电路的分类、数字电路的分类(1 1)按集成度分类:数字电路可分为小规模()按集成度分类:数字电路可分为小规模(SSISSI,每片数,每片数十器件)、中规模(十器件)、中规模(MSIMSI,每片数百器件)、大规模(,每片数百器件)、大规模(LSILSI,每片数千器件)和超大规模(每片数千器件)和超大规模(VLSIVLSI,每片器件数目大于,每片器件数目大于1 1万)万)数字集成电路。集成电路从应用的角度又可分为通用型和专数字集成电路。集成电路从应用的角度又可分为通用型和专用型两大类型。用型两大类型。(2 2)按所用器件制作工艺的不同:数字电路可分为双极型)按所用器件制作工艺的不
5、同:数字电路可分为双极型(TTLTTL型)和单极型(型)和单极型(MOSMOS型)两类。型)两类。(3 3)按照电路的结构和工作原理的不同:数字电路可分为组)按照电路的结构和工作原理的不同:数字电路可分为组合逻辑电路和时序逻辑电路两类。组合逻辑电路没有记忆功合逻辑电路和时序逻辑电路两类。组合逻辑电路没有记忆功能,其输出信号只与当时的输入信号有关,而与电路以前的能,其输出信号只与当时的输入信号有关,而与电路以前的状态无关。时序逻辑电路具有记忆功能,其输出信号不仅和状态无关。时序逻辑电路具有记忆功能,其输出信号不仅和当时的输入信号有关,而且与电路以前的状态有关。当时的输入信号有关,而且与电路以前的
6、状态有关。a9典型的数字系统数字计算机适配器适配器控控制制器器运运算算器器存存储储器器输入输入设备设备输出输出设备设备CPUCPU系统总线系统总线a102 2、数字逻辑电路的研究方法、数字逻辑电路的研究方法1 1:对一个现成的数字逻辑电路研究它的工作性能:对一个现成的数字逻辑电路研究它的工作性能 和逻辑功能和逻辑功能分析,分析,2 2:根据提出的逻辑功能,在给定条件下构造出实:根据提出的逻辑功能,在给定条件下构造出实 现预定功能的逻辑电路现预定功能的逻辑电路设计设计a11第一章第一章 数制与码制数制与码制a12(1 1)进位制:表示数时,仅用一位数码往往不够用,必)进位制:表示数时,仅用一位数
7、码往往不够用,必须用进位计数的方法组成多位数码。多位数码每一位的须用进位计数的方法组成多位数码。多位数码每一位的构成以及从低位到高位的进位规则称为进位计数制,简构成以及从低位到高位的进位规则称为进位计数制,简称进位制。称进位制。1.1 1.1 进位计数制进位计数制(2 2)基)基 数:进位制的基数,就是在该进位制中可能数:进位制的基数,就是在该进位制中可能用到的数码个数。用到的数码个数。(3 3) 位位 权(位的权数):在某一进位制的数中,每权(位的权数):在某一进位制的数中,每一位的大小都对应着该位上的数码乘上一个固定的数,一位的大小都对应着该位上的数码乘上一个固定的数,这个固定的数就是这一
8、位的权数。权数是一个幂。这个固定的数就是这一位的权数。权数是一个幂。两个基本因素两个基本因素a13一、十进制一、十进制 基数为基数为10,逢十进一逢十进一 ,基本数码基本数码 0、1、2、3、4、5、6、7、8、9;相邻高位是低位权的十倍。相邻高位是低位权的十倍。位置记数法位置记数法 :按权展开式按权展开式:(S )10= an-110n-1+ an-210n-2+.+a1101+a0100+a-110-1+a-210-2+.+a-m10-m=例:(例:(.) 101+100+10-1+10-2+10-(S )10= (an-1an-2.a1a0a-1a-2.a-m )10(或)(或) 101
9、inmiia又如:又如:(209.04)10 2102 0101910001014 102a14二、二、二进制二进制基数为基数为2,2,逢二进一逢二进一 , ,基本数码基本数码0 0、1;1;相邻高位是低位权相邻高位是低位权的二倍。的二倍。位置记数法位置记数法 :(S ):(S )2 2= (a= (an-1n-1a an-2n-2.a.a1 1a a0 0a a-1-1a a-2-2.a.a-m-m ) )2 2 按权展开式按权展开式: (S ): (S )2 2= a= an-1n-12 2n-1n-1 + a + an-2n-22 2n-2n-2+.+a+.+a1 12 21 1+a+a
10、0 02 20 0 +a+a-1-12 2-1-1+a+a-2-22 2-2-2+.+a+.+a-m-m2 2-m-m= =例:()例:()2 2 + + 2 2+ +2 2+ +2 2+ +2 2+ +2 2+ +2 2+ + 2 2 + + 2 2- -+ +2 2- -+ +2 2- -21inmiiaa15(101.01)(101.01)2 2 1 12 22 2 0 02 21 11 12 20 00 02 21 11 1 2 22 2 (5.25)(5.25)1010加法规则:加法规则:0+0=00+0=0,0+1=10+1=1,1+0=11+0=1,1+1=101+1=10乘法规
11、则:乘法规则:00=000=0,01=0 01=0 ,10=010=0,11=111=1运算规则运算规则: :各数位的权是的幂各数位的权是的幂二进制数只有二进制数只有0 0和和1 1两个数码,它的每一位都可以用电子元件来两个数码,它的每一位都可以用电子元件来实现,且运算规则简单,相应的运算电路也容易实现。实现,且运算规则简单,相应的运算电路也容易实现。a16 1 1 0 0 1+ 1 0 1 1 1 1 1 0 1 1 0 0 1 1 0 1 1 0 1 0 0 1 1 0 0 1 1 0 1 1 1 0 0 1 0 0 0 0 0 1 1 0 0 1 =1 1 1 1 1 0 1 1 0 1
12、 1 0 1 ) 1 1 0 0 1 1 0 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0移位相加移位相加移位相减移位相减a17 10011001* *101110111 0 0 11 0 0 11 0 0 11 0 0 11 0 0 11 0 0 11 0 0 11 0 0 11 0 1 11 0 1 1 0 0 0 00 0 0 0 1 1 0 0 0 1 1 1 1 0 0 0 1 1二进制乘法运算可转换成二进制乘法运算可转换成移位加法运算实现移位加法运算实现同理二进制除法运算可转同理二进制除法运算可转换成移位减法运算实现换成移位减法运算实现a18三三. .十六进制十六
13、进制基数为基数为16,16,逢十六进一逢十六进一 , ,基本数码基本数码 0 0、1 1、2 2、3 3、4 4、5 5、6 6、7 7、8 8、9 9、A A、B B、C C、D D、E E、F;F;相邻高位是低位权的十六倍。相邻高位是低位权的十六倍。位置记数法位置记数法 :(S ) :(S )1616= (a= (an-1n-1a an-2n-2.a.a1 1a a0 0a a-1-1a a-2-2.a.a-m-m ) )16 (16 (或)或) 按权展开式按权展开式: (S ): (S )1616= a= an-1n-11616n-1n-1+ a+ an-2n-21616n-2n-2 +
14、 +a+a1 116161 1+a+a0 016160 0 +a +a-1-11616-1-1+a+a-2-21616-2-2+.+a+.+a-m-m1616-m-m = =例:例:( () )= =1616+ +16161 1+ +16160 0+ +1616-1-1 + +1616-2-2+ +1616- -161inmiiaa19四四. .八进制八进制基数为基数为8,8,逢十进一逢十进一 , ,基本数码基本数码 0 0、1 1、2 2、3 3、4 4、5 5、6 6、7;7;相邻高位是低位权的八倍。相邻高位是低位权的八倍。位置记数法位置记数法 :(S):(S)8 8=(a=(an-1n-
15、1a an-2n-2.a.a1 1a a0 0a a-1-1a a-2-2.a.a-m-m ) )8(8(或)或)按权展开式按权展开式: :(S )(S )8 8= a= an-1n-18 8n-1n-1+ a+ an-2n-28 8n-2n-2+.+a+.+a1 18 81 1+a+a0 08 80 0+a+a-1-18 8-1-1 +a+a-2-28 8-2-2+.+a+.+a-m-m8 8-m-m = =81inmiiaa20例:例:( () )8 8= =8 8 + + 8 8+.+.+8 8+ +8 8-1-1 + +8 8-2-2+ +8 8 a21五五. .任意任意(r)(r)进
16、制进制基数为基数为r,r,逢逢r r进一进一 , ,基本数码基本数码 r r个个; ;相邻高位是低位权的相邻高位是低位权的r r倍。倍。位置记数法位置记数法: :(S )(S )r r=(a=(an-1n-1a an-2n-2.a.a1 1a a0 0a a-1-1a a-2-2.a.a-m-m ) )r r按权展开式按权展开式:(S):(S)r r=a=an-1n-1r rn-1n-1+a+an-2n-2r rn-2n-2+ . + . +a +a1 1r r1 1+a+a0 0r r0 0+a+a-1-1r r-1-1 +a +a-2-2r r-2 -2 + .+a+ .+a-m-mr r
17、-m-m = =rainmii1a22a231.2 数制转换数制转换例:()例:()1+1 +11+1+1()()一、十进制与二进制间的相互转换一、十进制与二进制间的相互转换二进制数转换成十进制数二进制数转换成十进制数(按权展开,相加得到)按权展开,相加得到)如:如:()() 1 16 61 15 51 13 31 10 01 1-1-1+1+1-2-2 ()()a24十十进制数转换成二进制数进制数转换成二进制数)整数部分:除)整数部分:除2取余取余例如,要将十进制整数例如,要将十进制整数143转换为二进制整数,就要把它转换为二进制整数,就要把它写成如下形式:写成如下形式:a250124817
18、35711432222222210001111(143)D=(10001111)B余数余数a26依据依据: :两数相等两数相等, ,其整数部分和小数部分应分其整数部分和小数部分应分别相等别相等20121100121).().(bbbbddddkknn则除后他们也应相等,且它们的小数部除后他们也应相等,且它们的小数部分和整数部分应分别相等。分和整数部分应分别相等。a27)小数部分:)小数部分:乘取整直到小数部分为乘取整直到小数部分为0 0或达到或达到 所要求的精度。所要求的精度。例例: :将将 (0.8125 )10(0.8125 )10化为二进制小数化为二进制小数所以所以 (0.8125 )(
19、0.8125 )10 10 =(0.1101)=(0.1101)2 2a28 1 1 1 1 1 1 1 1 1 1 1 . 1 1 1 1 84211632641282565121024.5.25.125.062512481632641285121024204840963288D=2048+1024+128+64+16+8 =11011011000Ba29二二进制数与十六进制数之间的相互转换二二进制数与十六进制数之间的相互转换二进制数转换成十六进制数二进制数转换成十六进制数以小数点为中心,分别向左或向右每四位二进制数对应一以小数点为中心,分别向左或向右每四位二进制数对应一位十六进制数,不足部
20、分补。位十六进制数,不足部分补。例:例: 十六进制数转换成二进制数十六进制数转换成二进制数以小数点为中心,分别向左或向右每一位十六进制数对应以小数点为中心,分别向左或向右每一位十六进制数对应四位二进制数。四位二进制数。例:例:a30三二进制数与八进制数之间的相互转换三二进制数与八进制数之间的相互转换二进制数转换成八进制数二进制数转换成八进制数以小数点为中心,分别向左或向右每三位二进制数对应一以小数点为中心,分别向左或向右每三位二进制数对应一位八进制数,不足部分补。位八进制数,不足部分补。例:例:( () )( () )O O八制数转换成二进制数八制数转换成二进制数以小数点为中心,分别向左或向右
21、每一位八进制数对应三位以小数点为中心,分别向左或向右每一位八进制数对应三位二进制数。二进制数。例:()例:()()()a31. 带符号二进制数的代码表示a32真值与机器码真值与机器码: :符号位符号位 数值位数值位1 10 01 11 11 10 01 11 1N1=+1011N1=+1011N2=N2=10111011+ +1 10 0a331.1.原码表示法(符号原码表示法(符号数值表示法)数值表示法) 原码表示法用原码表示法用“0”0”表示正号,用表示正号,用“1”1”表示负号,表示负号,有效值部分用二进制的绝对值表示。以下有效值部分用二进制的绝对值表示。以下n n均表示均表示字长的有效
22、位。字长的有效位。X X1 1 = + 1001 = + 1001XX1 1 原原 = = 0 010011001X X2 2 = = 1001 1001XX2 2 原原 = = 1 110011001X X3 3 = 0. 1001 = 0. 1001XX3 3 原原 = = 0.0.10011001X X4 4 = =0. 10010. 1001XX4 4 原原 = = 1.1.10011001X X5 5 = 0. 0000 = 0. 0000XX5 5 原原 = = 0.0.00000000X X6 6 = =0. 00000. 0000XX6 6 原原 = = 1.1.0000000
23、0a34小数:小数: X 1- 2X 1- 2-(n-1) -(n-1) X0X0XX原原 = = 1-X=1+|X| 0X-(1-2 1-X=1+|X| 0X-(1-2-(n-1) -(n-1) ) )完成下列数的真值到原码的转换完成下列数的真值到原码的转换X1 = + 0.1011011 X2 = - 0.1011011 a35整数:整数: X 2X 2n-1n-1-1X0-1X0XX原原 = = 2 2n-1n-1-X=2-X=2n-1n-1+|X| 0X-(2+|X| 0X-(2n-1n-1-1)-1)完成下列数的真值到原码的转换完成下列数的真值到原码的转换X1 = + 0 10110
24、11 X2 = - 0 1011011 a36位二进制数的反码有位,其中位二进制数的反码有位,其中: :最高一位为符号位,正数的符号位用表示,最高一位为符号位,正数的符号位用表示,负数的符号位用表示,负数的符号位用表示,数值位:正数的数值位与真值相同、负数的数值位:正数的数值位与真值相同、负数的数值位由真值按位求反得到。数值位由真值按位求反得到。a37X1 = + 1001X1 反反 = 01001X2 = 1001X2 反反 = 10110X3 = 0. 1001X3 反反 = 0.1001X4 = 0. 1001X4 反反 = 1.0110X5 = 0. 0000X5 反反 = 0.000
25、0X6 = 0. 0000X6 反反 = 1.1111a38小数反码的定义小数反码的定义: X 1 X 0X反反= (2- 2-(n-1) )+X 0 X -(1-2-2-(n-1)-(n-1)X1=+0.1011011 , X1 反反 =0.1011011X2= -0.1011011 , X2 反反 =1.0100100 1. 1 1 1 1 1 1 1 -0. 1 0 1 1 0 1 1 1. 0 1 0 0 1 0 0 a39整数反码的定义: X 2n-1 X 0 X反反= (2n -1)+X 0 X -2 2n-1n-1 X3=+1011011 , X3 反反 =01011011 X4
26、= -1011011 , X4 反反 =10100100 +0反反=00000000 ; -0反反 =11111111a403 补码表示法模:计量器具的容量,或称为模数。模:计量器具的容量,或称为模数。4 4位字长的机器表位字长的机器表示的二进制整数为:示的二进制整数为: 0000-1111 0000-1111 共共1616种状态,模种状态,模为为16= 216= 24 4 。 整数整数N N位字长的模值为位字长的模值为 2 2n n,一位符号位的纯小数的模,一位符号位的纯小数的模值为值为2 2。 数数也可看成可丢掉的数也可看成可丢掉的数, ,例在例在1212进制中进制中1313点也点也记为记
27、为1 1点,即点,即: 1 = 13 ( mod 12): 1 = 13 ( mod 12)a41X1 = + 1001X1 补 = 01001X2 = 1001X2 补 = 10111X3 = 0. 1001X3 补 = 0.1001X4 = 0. 1001X4 补 = 1.0111X5 = 0. 0000X5 补 = 0.0000X6 = 0. 0000X6 补 = 0.0000X7 = 1. 0000X7 补 = 1.0000a42小数补码的定义:小数补码的定义: X 1X0 x补补= 2+X=2-|X| 0X-1 完成下列数的真值到补码的转换完成下列数的真值到补码的转换X1 = + 0
28、.1011011 X2 = - 0.1011011 a43整数补码的定义:整数补码的定义: X 2(n-1) -1 X0 x补补= 2n+X=2n-|X| 0X- 2(n-1)完成下列数的真值到补码的转换完成下列数的真值到补码的转换X1 = + 0 1011011 X2 = - 0 1011011 a44二机器数的运算二机器数的运算原码的运算:原码的运算:同符号数相加时,先得符号位,数值位再同符号数相加时,先得符号位,数值位再相加;相减时,先比较两数大小得符号相加;相减时,先比较两数大小得符号位,数值位用绝对值大的数减小的数。位,数值位用绝对值大的数减小的数。例:已知例:已知求:;求:;解:解
29、:原原原原原原;原原;原原;a45反码的运算:反码的运算:符号位和数值位一起参加运算,符号位的进位与最低符号位和数值位一起参加运算,符号位的进位与最低数值位再相加。数值位再相加。反反反反反反反反反反反反a46-1001110 - 0011001=-1100111-1001110 反=10110001-0011001 反=11100110 1 0 1 1 0 0 0 1+ 1 1 1 0 0 1 1 0= 1 0 0 1 0 1 1 1 + 1 1 0 0 1 1 0 0 01001110 0011001 = -1100111a47补码的运算:符号位和数值位一起参加运算,符补码的运算:符号位和数
30、值位一起参加运算,符号位的进位舍去号位的进位舍去。 补补 补补补补 补补 补补补补-1001110 - 0011001 = - 1100111 1 0 1 1 0 0 1 0+ 1 1 1 0 0 1 1 1= 1 0 0 1 1 0 0 1符号位进位舍弃符号位进位舍弃五位机器计算五位机器计算9-59+8已知已知 X=0 110101;Y=0011010求求 X+Y;XY已知已知 X=1000100;Y=0100111求求 X+Y;XYa48例例 已知已知X1= 0.1001,X2= -0.0101,求求 X2+X1补补和和X2-X1补补。 解:解: X2+X1补补= X2补补+X1补补= 1
31、.1011+0.1001由于符号位产生了进位,因此,要将此进位舍去,由于符号位产生了进位,因此,要将此进位舍去,即即X2+X1补补= 0.0100 运算结果的符号位为运算结果的符号位为0,说明是正数的补码,补,说明是正数的补码,补码与原码相同。码与原码相同。由于其符号位为由于其符号位为0,则其真值为则其真值为X2+X1= 0.0100 1.1011 1.1011+)0.1001+)0.1001 1 10.01000.0100舍去舍去a49 X2-X1补补= X2补补+-X1补补= 1.1011+1.0111由于符号位产生了进位,因此,要将此进位略去,由于符号位产生了进位,因此,要将此进位略去,
32、即即X2-X1补补= 1.0010运算结果的符号位为运算结果的符号位为1,说明是负数的补码,应对,说明是负数的补码,应对补码求补后才能得到原码,即补码求补后才能得到原码,即X2-X1原原= 1.1110由于其符号位为由于其符号位为1,则其真值为则其真值为X2-X1= -0.1110 1.1011 1.1011+)1.0111+)1.0111 1 11.00101.0010舍去舍去a50.十进制的补数 3 36 6 . .5 5 a511.1.对对1010的补数的补数十进制十进制“对对1010的补数的补数”与二进制的补码类似。与二进制的补码类似。符号位:正数用表示,负数用表示符号位:正数用表示,
33、负数用表示。数值位:正数与真值相同;数值位:正数与真值相同; 负数按位对求补,最低位加。负数按位对求补,最低位加。例:例:N1365N2=-365则:则:N1100365N2109635a52例1:用对10的补求123+456解:123+45610补 =+123 10补+456 10补 =0123+0456 =0579123+456=579例2:用对10的补求123-456解:123-45610补 =+123 10补+-456 10补 =0123+9544 =9667123-456=-333a53例4:用对10的补求5678-123解:5678-12310补 = 5678-012310补 =+
34、5678 10补+-0123 10补 =05678+99877 =055555678-123=5555例3:用对10的补求456-123解:456-12310补 =+45610补+-12310补 =0456+9877 =0333456-123=333舍去舍去a542.2.对的补数对的补数十进制十进制“对的补数对的补数”与二进制的反码类似。与二进制的反码类似。符号位:正数用表示,负数用表示符号位:正数用表示,负数用表示。数值位:正数与真值相同;数值位:正数与真值相同; 负数按位对求补。负数按位对求补。例:例:N1365N2=-365则:则:N10365N29634a55例1:用对9的补求123+
35、456解:123+4569补 =+123 9补+456 9补 =0123+0456 =0579123+456=579例2:用对9的补求123-456解:123-4569补 =+123 9补+-456 9补 =0123+9543 =9666123-456=-333a56例3:用对9的补求456-123解:456-1239补 =+4569补+-1239补 =0456+9876 =0333456-123=333a57数的定点和浮点表示a58.数的定点表示a59(1 1) 定点小数定点小数将小数点固定在符号位将小数点固定在符号位d d0 0之后,数值最高位之后,数值最高位d d-1-1之前。之前。格式
36、如下:格式如下: d d0 0d d-1-1d d-2-2d d-(n-1)-(n-1)其数据的表示范围随机器码表示方法的不同而不一样。其数据的表示范围随机器码表示方法的不同而不一样。 . . . . . .a60 (2) 定点整数定点整数将小数点固定在数的最低位之后,格式如下:将小数点固定在数的最低位之后,格式如下: d0d1d2d(n-1)其数据的表示范围随机器码表示方法的不同而不一样。其数据的表示范围随机器码表示方法的不同而不一样。 .a61.数的浮点表示数的浮点表示小数点的位置不固定或说是浮动的称为浮点表示。小数点的位置不固定或说是浮动的称为浮点表示。机器码中部分字段表示阶码,部分字段
37、表示尾数。机器码中部分字段表示阶码,部分字段表示尾数。阶码阶码尾数尾数a62 阶码阶码尾数尾数尾符尾符阶符阶符a63浮点表示速度快、数域广、精度高。浮点表示速度快、数域广、精度高。例例:16:16位浮点机器,位浮点机器,5 5位阶码补码表示位阶码补码表示( (含含1 1位位阶符阶符) ),1111位尾数补码表示位尾数补码表示( (含含1 1位尾位尾) )符,符,则其数域为:则其数域为:1 12 215 15 2 2-16-162 2-16-162 2-10-102 2-16-16=2=2-26 -26 (1-2 (1-2-15-15) ) 2 21515221515例例1616位定点小数机器其
38、数域为:位定点小数机器其数域为:2 2-15-15=1-2=1-2-15 -15 a641.4 1.4 几种常用的编码几种常用的编码a651. 4. 1 1. 4. 1 十进制数的二进制编码十进制数的二进制编码 十进制数的二进制编码简称为二十进制数的二进制编码简称为二- -十进制码或十进制码或BCDBCD码,码,所谓所谓BCDBCD码是指用若干位二进制数来表示一位十进制码是指用若干位二进制数来表示一位十进制数。数。 十进制数有十进制数有0 09 9共共1010个数码,所以表示个数码,所以表示1 1位十进位十进制数,至少需要制数,至少需要4 4位二进制数。但位二进制数。但4 4位二进制数可以产位
39、二进制数可以产生生2 24 4= 16= 16种组合,用种组合,用4 4位二进制数表示位二进制数表示1 1位十进制数,位十进制数,有六种组合是多余的。十进制数的二进制编码可以有有六种组合是多余的。十进制数的二进制编码可以有许多种方法,即有许多种不同的编码方案。下表列举许多种方法,即有许多种不同的编码方案。下表列举了目前常用的几种编码方案。了目前常用的几种编码方案。a66二进制二进制十进制数码十进制数码00000000000100010010001000110011010001000101010101100110011101111000100010011001101010101011101111
40、0011001101110111101110111111110 02 21 19 94 47 75 53 38 87 76 6a67二进制数二进制数余码余码码码码码a68一、一、8421BCD8421BCD码码 用四位自然二进制码中的前十个码字来表示十进制用四位自然二进制码中的前十个码字来表示十进制数码,因各位的权值依次为数码,因各位的权值依次为8 8、4 4、2 2、1 1,故称,故称8421 BCD8421 BCD码。码。由于由于84218421码中的每一位的权是固定不变的,它属于恒权代码。码中的每一位的权是固定不变的,它属于恒权代码。恒权码的按权展开式如下:恒权码的按权展开式如下:S=
41、aS= a3 3W W3 3+a+a2 2W W2 2+a+a1 1W W1 1+a+a0 0W W0 0a698421BCD8421BCD码的权为码的权为W W3 3 = 2= 23 3 = 8 W= 8 W2 2 = 2= 22 2 = 4 = 4 W W1 1 = 2= 21 1 = 2 W= 2 W0 0 = 2= 20 0 = 1= 1例如,例如,8421BCD8421BCD码码10011001的按权展开式为的按权展开式为18+04+02+11= 918+04+02+11= 9因而,代码因而,代码10011001表示十进制数表示十进制数9 9。注意:在注意:在8421BCD8421B
42、CD码中,不允许出现码中,不允许出现1010101011111111这几个代这几个代码,因为在十进制中,没有数码同它们对应码,因为在十进制中,没有数码同它们对应 a70二、余二、余3 3码码 余余3 3码是一种特殊的码是一种特殊的84218421码,它是由码,它是由8421BCD8421BCD码加码加3 3后形成的,所以叫做余后形成的,所以叫做余3 3码。例如,十进码。例如,十进制数制数7 7在在8421BCD8421BCD码中是码中是01110111,在余,在余3 3码中就成为码中就成为10101010。余。余3 3码的各位无固定的权。码的各位无固定的权。余余3 3码是一种对的自补码码是一种
43、对的自补码a71 三、三、24212421码码 2421 2421码也是一种恒权码,它的码也是一种恒权码,它的0 0和和9 9、1 1和和8 8、2 2和和7 7、3 3和和6 6、4 4和和5 5互为反码,这互为反码,这一点和余一点和余3 3码相似。只要将码相似。只要将24212421码自身码自身按位求反,就能方便地得到其按位求反,就能方便地得到其“对对9 9的的补数补数”的的24212421码。码。24212421码用码用4 4位二进制位二进制数表示数表示1 1位十进制数,其权为位十进制数,其权为 W W3 3 = 2 W= 2 W2 2 = 4 = 4 W W1 1 = 2 W= 2 W
44、0 0 = 1= 1a72(34.56)D=(00110100.01010110)=(00110100.01010110)84218421=(01100111.10001001)=(01100111.10001001)余余3 3=(00110100.10111100)=(00110100.10111100)24212421=(00110100.10001001)=(00110100.10001001)54215421a731.4.2 1.4.2 可靠性编码可靠性编码 一、格雷码一、格雷码 (Gray )(Gray )格雷码又叫循环码,它有多种编码形式,但格雷码又叫循环码,它有多种编码形式,但它
45、们有一个共同的特点,就是任意两个相邻它们有一个共同的特点,就是任意两个相邻的代码之间,它们的格雷码仅有一位不同,的代码之间,它们的格雷码仅有一位不同,其余各位均相同。下表列出了一种格雷码。其余各位均相同。下表列出了一种格雷码。信息在生成过程中引入的一种可靠性编码。信息在生成过程中引入的一种可靠性编码。 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1a74十进制数码的格雷码十进制数码的格雷码十进制十进制数码数码0 1 2 3 4 5 6 7 8 90 1 2 3 4 5 6 7 8 9格雷码格雷码0000 0001 0011 0010 0110 0111 0101 0100 11
46、00 11010000 0001 0011 0010 0110 0111 0101 0100 1100 1101a75格雷码是一种无权码,它与二进制数之间的格雷码是一种无权码,它与二进制数之间的转换关系如下:转换关系如下: 设二进制数为设二进制数为B=BB=Bn nB Bn-1n-1BB1 1B B0 0,其对应的格雷码为其对应的格雷码为G=GG=Gn nG Gn-1n-1GG1 1G G0 0,则,则: :G Gn n=B=Bn nG Gi i=B=Bi+1i+1BBi i i = 0,1,2,n-1 i = 0,1,2,n-1 G G4 4=B=B4 4G G3 3=B=B4 4BB3 3
47、G G2 2=B=B3 3BB2 2G G1 1=B=B2 2BB1 1以四位为例以四位为例: :a76例:把二进制数例:把二进制数01010101和和10011001转换成格雷码。转换成格雷码。 a77可推广到n位:1183184a78如果已知格雷码,也可将其转换成对应如果已知格雷码,也可将其转换成对应的二进制数,其转换关系如下:的二进制数,其转换关系如下: iiinnGBBGB11,.12,0ni以四位为例以四位为例: :12341212342323434344GGGGGBBGGGGBBGGGBBGBa79例:把格雷码例:把格雷码11001100和和01110111转换成二进制数。转换成二
48、进制数。a80例:把格雷码例:把格雷码110011010110011010转换成二进制数。转换成二进制数。1 1 0 0 1 1 0 1 01 1 0 0 1 1 0 1 01 0 0 0 1 0 0 1 11 0 0 0 1 0 0 1 1a81二、奇偶校验码二、奇偶校验码奇偶校验码是一种能检验出二进制信息在传送过奇偶校验码是一种能检验出二进制信息在传送过程中出现错误的代码。这种代码由两部分组成程中出现错误的代码。这种代码由两部分组成: :。表。表1.41.4表示由表示由1 1位奇偶校验位位奇偶校验位( (首位首位) )及及4 4位信息位信息位构成的位构成的5 5位奇偶校验码。位奇偶校验码。
49、a82Bn-1Bn-2B1PBn-1Bn-2B1 a83表表1.41.4:十进制数码的奇偶校验码:十进制数码的奇偶校验码十进制数码十进制数码信息码信息码奇校验码奇校验码偶校验码偶校验码0 01 12 23 34 45 56 67 78 89 9000000000001000100100010001100110100010001010101011001100111011110001000100110011 00001 00000 00010 00010 00100 00101 00111 00110 01000 01001 01011 01011 01101 01100 01110 01110
50、10000 10001 10011 10010 00000 00001 00011 00011 00101 00100 00110 00111 01001 01000 01010 01010 01100 01101 01111 01111 10001 10000 10010 1001a84F FX X1 1X X2 2X X3 3X Xn n接收端接收端a85偶偶校校验验位位发发生生器器101110111 1101110111 110111011偶偶校校验验位位检检测测器器10111011正确正确出错出错1 110101 11 10 01 11 10 01 1a861234BBBBP1 1 0