1、电子技术基础电子技术基础数字部分(第五版)数字部分(第五版)主编:康华光主编:康华光 主讲:主讲: 康华光康华光 1.课程性质课程性质 数字电路课程是电气信息类专业入门性质的一门重要的专业重要的专业基础课程基础课程,是一门核心课程核心课程 ,学分 3 分。 本课程是后续专业课程的基础。专业课程单片机原理与接口技术 、DSP原理及应用、嵌入式系统等等。 2. 课程目的及要求:课程目的及要求: 获得数字电子技术方面的基本理论、基本知识和基本技能;培养分析和解决问题的能力。3.课程考试课程考试 平时成绩 (作业+考勤) 30% ; 期末考试 70% 。 获得学士学位要求课程成绩70分。课程简介课程简
2、介参考资料参考资料阎石主编 数字电子技术基础 高等教育出版社余孟尝主编 数字电子技术基础 高等教育出版社欧阳星明主编 数字逻辑 华中科技大学出版社罗杰主编 电子技术基础数字部分习题全解 高等教育出版社王冠华主编 Muitisim10电路设计及应用 国防工业出版社电子工程手册编委会等编标准TTL集成电路数据手册 电子工业出版社标准CMOS集成电路手册 电子工业出版社http:/课程简介课程简介教材内容教材内容1.数字逻辑概论2.逻辑代数与硬件描述语言概述3.逻辑门电路4.组合逻辑电路5.锁存器与触发器6.时序逻辑电路7.存储器、复杂可编程器件和现场可编程门阵列8.脉冲波形的变换与产生9.模数与数
3、模转换器10.数字系统设计基础*1. 1.数字逻辑基础数字逻辑基础1.1 数字电路与数字信号1.2 数制1.3 二进制数的算术运算1.4 二进制代码1.5 二值逻辑变量与基本逻辑运算1.6 逻辑函数及其表示方法1. 掌握2、10、8、16进制数的表示与相互转化;2. 掌握二进制数的原码、反码、补码的表示方法;3. 掌握8421码、余3码、格雷码的表示方法;4. 掌握与、或、非、与非、或非、异或、同或基本逻辑运算;5. 掌握逻辑函数的4种表示方法:真值表、逻辑表达式、逻辑图、波形图。教学要求教学要求1.1 数字电路与数字信号数字电路与数字信号1.1.1数字技术的发展及其应用数字技术的发展及其应用
4、 电子技术是20世纪发展最迅速、应用最广泛的技术,特别是数字电子技术,已经广泛用于广播、电视、通信、医疗、控制、测量、交通、航空、军事、探测、文娱、家用电器领域。数字电视计算机数码摄像机计算机网络智能仪器手机1.1 数字电路与数字信号数字电路与数字信号电子技术发展特点:以电子器件的发展为基础电子技术发展特点:以电子器件的发展为基础电子管,1906年,福雷斯特等发明了电子管,电真空技术晶体管,1947年第一只晶体三极管问世,半导体技术半导体集成电路,20世纪60年代初,模拟和数字集成电路相继上市。1.1.1数字技术的发展及其应用数字技术的发展及其应用电路设计方法伴随器件变化从传统走向现代电路设计
5、方法伴随器件变化从传统走向现代传统的设计方法: 采用自下而上的设计方法;由人工组装,经反复调试、验证、修改完成。所用的元器件较多,电路可靠性差,设计周期长。现代的设计方法: 现代EDA技术实现硬件设计软件化。采用从上到下设计方法,电路设计、分析、仿真 、修订,全通过计算机完成。1.1 数字电路与数字信号数字电路与数字信号1.1.1数字技术的发展及其应用数字技术的发展及其应用 EDA技术以计算机为基本工具、借助于软件设计平台,采用从上到下设计方法,电路设计、分析、仿真 、修订,全通过计算机完成。最后下载到芯片,实现系统功能。使硬件设计软件化。 硬件描述语言HDL是EDA技术中的重要组成部分,当前
6、最流行的并成为IEE标准的硬件描述语言是VHDL和Verilog。本书介绍Verilog HDL硬件描述语言。 本书介绍的Quartus软件,是Altera公司近几年推出的新一代的可编程逻辑器件设计环境,支持PLD设计的设计输入、编译、综合、布局、布线、时序分析、仿真、编程下载等EDA设计过程。EDA(Electronics Design Automation)技术技术1.1 数字电路与数字信号数字电路与数字信号1.1.1数字技术的发展及其应用数字技术的发展及其应用虚拟实验与虚拟实验与电子电路设计和仿真软件电子电路设计和仿真软件 Multisim 10介绍介绍 随着计算机技术飞速发展,虚拟实验
7、作为一种新兴实验技术迅速倔起,虚拟实验就是利用仿真软件仿真软件在计算机上做实验。在计算机屏幕上,将逻辑符号表示的逻辑器件连接起来构成逻辑电路,用键盘或鼠标控制开关通断,用显示器件显示相关结果或用虚拟仪器虚拟仪器进行测量。 Multisim10是由美国NI公司在EWB (电子工作平台) 基础上推出的电子电路设计和仿真的优秀软件,尤其在教育领域取得了巨大成功。 Multisim10 界面直观,操作方便。测试仪表和某些仿真元件的外形与实物接近,操作方法也基本相同,因而该软件易学易用。 本书介绍的Quartus软件,也具有仿真的功能。1.1 数字电路与数字信号数字电路与数字信号1.1.1数字技术的发展
8、及其应用数字技术的发展及其应用 电子电路按功能分为模拟电路和数字电路。 根据电路的结构特点及其对输入信号相应规则的不同,数字电路分为组合逻辑电路和时序逻辑电路。 数字电路中的电子器件,如二极管、三极管,都工作在开关状态,或导通,或截止,构成电子开关。这些电子开关是组成逻辑门电路的基本单元,逻辑门电路又是数字电路的基本单元。 如果将这些门电路集成在一块半导体芯片上就构成了数字集成电路。集成度:每一芯片所包含的门个数。 1.1 数字电路与数字信号数字电路与数字信号1.1.2 数字集成电路的分类及特点数字集成电路的分类及特点1.数字集成电路的分类数字集成电路的分类1、根据采用半导体器件分类双极型 M
9、OS TTL ECL I2L PMOSNMOSCMOS2、根据集成规模分类SSI MSILSI VLSI3、根据设计方法和功能定义分类非用户定制全用户定制半用户定制ULSI1.1 数字电路与数字信号数字电路与数字信号1.1.2 数字集成电路的分类及特点数字集成电路的分类及特点2、数字集成电路的特点、数字集成电路的特点电路简单,便于大规模集成,批量生产;可靠性、稳定性和精度高,抗干扰能力强;体积小,通用性好,成本低;具可编程性,可实现硬件设计软件化;高速度,低功耗;加密性好。1.1 数字电路与数字信号数字电路与数字信号1.1.2 数字集成电路的分类及特点数字集成电路的分类及特点1.1.3 模拟模
10、拟信号与数字信号信号与数字信号3、数字电路的分析、设计、数字电路的分析、设计(1)、数字电路分析、数字电路分析分析:分析:根据给定的逻辑电路确定电路输出与输入之间的逻辑关系。分析工具:逻辑代数。表达电路输出与输入之间逻辑关系主要用:真值表真值表、功能表功能表、逻辑表逻辑表达式达式和波形图波形图。(2)、数字电路设计、数字电路设计设计:设计:从给定的逻辑功能要求出发,选择适当的逻辑器件,设计出符合要求的逻辑电路。 设计方式:分为传统的设计方式和基于EDA软件的设计方式。 1.1 数字电路与数字信号数字电路与数字信号1. 模拟信号模拟信号模拟量:在时间上是连续变化的,数值上也是连续取值的物理量。例
11、如温度、压力等。模拟信号:表示模拟量的电信号叫模拟信号。处理模拟信号的电子电路称为模拟电路。 在工程技术上,为了便于处理和分析,通常用传感器将模拟量转换为与之成比例的电压或电流信号,然后再送到电子系统中进一步处理。电压或电流信号常用图形来表示波形图。热电偶得到的模拟电压信号波形1.1 数字电路与数字信号数字电路与数字信号1.1.3 模拟模拟信号与数字信号信号与数字信号2. 数字信号数字信号数字量:在时间上、数值上都是离散物理量。例如学生成绩记录、用温度计每隔1小时测量出的某一天的温度等。数字信号:表示数字量的电信号叫数字信号。数字电路:处理数字信号的电子电路。 用数字信号也能表示温度,用温度计
12、每隔1小时测量出的某一天的温度,取1作为量化单位,这样,一天内温度记录在时间上、数值上都不是连续的,温度以1的单位增加或减少。显然,用数字信号表示温度存在一定的误差,误差取决于量化单位的选择。 随着计算机的广泛应用,绝大多数电子系统都是采用计算机对信号进行处理。由于计算机无法直接处理模拟信号,所以需要将模拟信号转换为数字信号。 1.1 数字电路与数字信号数字电路与数字信号1.1.3 模拟模拟信号与数字信号信号与数字信号3、模拟信号的数字表示、模拟信号的数字表示 由于计算机处理模拟信号的需要,且数字信号便于存储、分析和传输,通常都将模拟信号转换为数字信号。 模拟信号 3V数字输出 模数转换器 模
13、数转换的实现0 0 0 0 0 0 1 1温度模拟信号转换为数字信号1.1 数字电路与数字信号数字电路与数字信号1.1.3 模拟模拟信号与数字信号信号与数字信号141295电压(V)二值逻辑电 平+51H(高电平)00L(低电平)逻辑电平与电压值的关系(正逻辑)1、二值数字逻辑和逻辑电平、二值数字逻辑和逻辑电平在电路中用低低、高电平高电平表示0、1两种逻辑状态0、1数码 表示方式二值数字逻辑 1.1.4 数字信号的描述方法数字信号的描述方法1.1 数字电路与数字信号数字电路与数字信号(a) 用逻辑电平描述的数字波形(b) 16位数据的图形表示2、数字波形、数字波形数字波形-是信号逻辑电平对时间
14、的图形表示。0101110011110100最高位1.1 数字电路与数字信号数字电路与数字信号1.1.4 数字信号的描述方法数字信号的描述方法横轴,时间纵轴,电压(1)、数字波形的两种类型: 非归零型, 归零型。 一定的时间间隔T,称为1位(1 bit),或者一拍。非归零型:如果在一个时间拍内用高电平代表1,低电平代表0,称为非归零型。归零型:如果在一个时间拍内用有脉冲代表1,无脉冲代表0,称为归零型。非归零型归零型高电平低电平有脉冲无脉冲1.1 数字电路与数字信号数字电路与数字信号1.1.4 数字信号的描述方法数字信号的描述方法比特率 :每秒钟传输数据的位数。例1.1.1 某通信系统每秒钟传
15、输1544000位(1.544兆位)数据,求每位数据的时间。ns648s1067.647s10544. 1916解:按题意,每位数据的时间为1.1 数字电路与数字信号数字电路与数字信号1.1.4 数字信号的描述方法数字信号的描述方法(2)、周期性和非周期性非周期性波形周期性波形周期性数字波形几个参数周期 T 和频率 f :脉冲宽度tW :脉冲作用的时间。占空比q:%100Tt(%)qW1.1 数字电路与数字信号数字电路与数字信号1.1.4 数字信号的描述方法数字信号的描述方法T1f 例1.1.2 设周期性数字波形的高电平持续6ms,低电平持续10ms,求占空比q。%5 .37%100ms16m
16、s6解:因数字波形的脉冲宽度tw= 6ms,周期T =6ms+10ms=16ms。%100Tt(%)qW1.1 数字电路与数字信号数字电路与数字信号1.1.4 数字信号的描述方法数字信号的描述方法(3)实际数字信号波形 在实际数字系统中,数字信号并不是理想矩形波,如图所示。上升时间tr 和下降时间tf :从脉冲幅值的10%到90% 上升或下降所经历的时间( 典型值ns )。脉冲宽度tw: 脉冲幅值的50%的两个时间所跨越的时间。除非特别需要,一般只画理想波形。1.1 数字电路与数字信号数字电路与数字信号1.1.4 数字信号的描述方法数字信号的描述方法(4)时序图时序图:表明各信号之间时序关系的
17、多重波形图,又称脉冲波形图。 在数字电路中,常用时序图来分析实现逻辑电路的功能。如图所示为一典型的时序图,图中CP为时钟脉冲信号,它是数字系统中的参考时间。1.1 数字电路与数字信号数字电路与数字信号1.1.4 数字信号的描述方法数字信号的描述方法注意,横轴是时间注意,横轴是时间进位计数制的进位基数和数位的权值。 进位基数:在一个数位上,规定使用的数码符号的个数叫该进位计数制的进位基数或进位模数,记作R。例如十进制, R=10:数码符号为0、1、2、3、4、5、6、7、8、9 。 二进制, R=2: 数码符号为0、1。 八进制, R=8: 数码符号为0、1、2、3、4、5、6、7。十六进制,
18、R=16:数码符号为0、1、2、3、4、5、6、7、8、9 、A、 B、C、D、E、F。数位的权值:某个数位上数码为1时所表征的数值,称为该数位的权值,简称“权”。各个数位的权值均可表示成Ri 的形式,其中R是进位基数,i是各数位的序号。1.2 数制数制1) 基数10个,数字符号09;2) 逢十进一,即1+9=10;3) 不同数位上的数具有不同的权值10i;4) 十进制数用下标 “ D ” 表示,也可省略;5) 任意一个十进制数,都可按其权位展成多项式的形式: ( 368.258 )D = 3102+ 6101+ 8100+ 210-1+ 510-2+ 810-3一般地说,任意十进制数可表示为
19、:同理,任意进制数可表示为:十进制数人们最熟悉, 但机器实现起来比较困难。 1.2.1 十进制十进制1nmii10iK)N(D系数权1nmiiRiK)N(R1.2 数制数制1. 二进制数的表示方法二进制数的表示方法1) 基数2个,数字符号0、1;2) 逢二进一,即1+1=10;3) 不同数位上的数具有不同的权值2i;4) 二进制数用下标 “ B ” 表示;5) 任意一个二进制数,都可按其权位展成多项式的形式: ( 1011.01 )B = 123+ 022+ 121+ 120+ 02-1+ 12-2二进制数转换成十进制数的方法:将二进制的数按权展成多项式,按十进制求和。例1.2.1:(1010
20、110)B=( ? )D解:(1010110)B = 126+025+124+023+122+121+120 = 64 +0 +16 +0 +4 +2 +0 = (86)D1.2.2 二二进制进制1.2 数制数制2. 二进制的优点与缺点二进制的优点与缺点优点:优点:(1). 二进制数字装置所用元件少,电路简单、可靠 、易于电路表达。 二进制只有数码0、1两个值,因此它的每1位可以用任何具有两个不同稳定状态的元件表示,例如三极管的导通或截止,灯泡的亮或灭、继电器触点的闭合或断开来表示。这样,机器容易实现。因而二进制是数字系统唯一认识的代码。(2). 基本运算规则简单, 运算操作方便。缺点:缺点:
21、(1). 与人的习惯不一致。(2). 位数太多,书写不方便。1.2.2 二二进制进制1.2 数制数制3. 二进制数波形表示二进制数波形表示 在数字电子技术和计算机应用中,二值数据常用数字波形来表示。这样,数据比较直观,也便于用示波器进行监视。 如图是16进制计数器的1个输入端、4个输出端的波形。 CPLSB 20 21 22MSB 23000010001 2 3 4 5 6 7 8 9 10 11 12 13 14 15010011000010101001101110000110010101110100111011011111111.2.2 二二进制进制1.2 数制数制4、 二进制数据的传输二
22、进制数据的传输(1) 二进制数据的串行传输 串行传输:将一组二进制数据各位分时传送。 特点:只要一根数据线,设备简单,但传送速率较慢。1.2.2 二二进制进制1.2 数制数制0 0 1 1 0 1 1 04、 二进制数据的传输二进制数据的传输(2) 二进制数据的并行传输 并行传输:将一组二进制数据所有位同时传送。 特点:传送速率快,但数据线较多,而且发送和接收设备较复杂。1.2.2 二二进制进制1.2 数制数制1.2.3 二二 - 十进制之间的转换十进制之间的转换二进制数十进制数的方法,是将二进制的数按权展成多项式,按十进制求和。十进制数二进制数,整数部分与小数部分转换方法不同。整数部分转换方
23、法:整数部分转换方法:除2取余,先低后高,商0为止。(短除法短除法) 将十进制数连续不断地除以2 , 直至商为零,所得余数由低位到高位排列,即为所求二进制数。小数部分转换方法:小数部分转换方法:乘2取整,先高后低,达标为止。(连乘法连乘法) 将十进制小数每次除去上次所得积中的整数再乘以2,所得整数由高位到低位排列,直到满足误差要求为止,就可完成由十进制小数转换成二进制小数。1.2 数制数制、整数转换、整数转换短除法方法:除2取余, 先低后高 商0为止 将十进制数除以2得到的余数作为最低位,得到的商继续除以2得到的余数作为次低位, 一直到商等于0为止。 例1.2.2:( 37 )D = ( )
24、B222222371894210?1010101010011.2.3 二二 - 十进制之间的转换十进制之间的转换商等于0为止1.2 数制数制、整数转换、整数转换拆分法1.2.3 二二 - 十进制之间的转换十进制之间的转换解:由于27为128,而133128=5=2220,例1.2.3 将( 133 )D转换为二进制数所以对应二进制数b7=1,b2=1,b0=1,其余各系数均为0,所以得(133)D=(10000101)Bn练习:( 33 )D=( )B ( 136 )D=( )B 1.2 数制数制10000110001000、整数转换、整数转换凑数法1.2.3 二二 - 十进制之间的转换十进制
25、之间的转换例 将( 200 )D转换为二进制数解:二进制数权值256 128 64 32 16 8 4 2 1 0 1 1 0 0 1 0 0 0所以得:(200)D=(11001000)B1.2 数制数制1.2.3 二二 - 十进制之间的转换十进制之间的转换、小数转换连乘法方法:乘2取整, 先高后低 达标为止将十进制数乘以2得到的整数作为最高位,得到的积的小数继续乘以2,再得到的整数作为次高位,直到积的小数等于0,或达到小数位数为止。 例: ( 0.6875 )D = ( ) B?0.68752.375012.750022.5000.00000110.10111.2 数制数制0.7062 =
26、 1.412 b-1= 10.4122 = 0.824 b-2= 00.8242 = 1.648 b-3= 10.6482 = 1.296 b-4= 10.2962 = 0.592 b-5= 00.5922 = 1.184 b-6 = 10.1842 = 0.368 b-7 = 00.3682 = 0.736 b-8 = 00.7362 = 1.472 b-9 = 10.4722 = 0.944 b-10= 01.2.3 二二 - 十进制之间的转换十进制之间的转换、小数转换例1.2.4 将 (0.706)D转换成二进制数,要求误差不大于2-10。解:要求最多10位小数所以: ( 0.706 )
27、D = ( 0.101101001 ) B1.2 数制数制1.2.4 十六进制和八进制十六进制和八进制1、十六进制、十六进制1) 基数16个,0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F2) 逢十六进一,即1+F =10;3) 不同数位上的数具有不同的权值16i;4) 十六进制数用下标 “ H ” 表示;5) 任意一个十六进制数,都可按其权位展成多项式的形式: ( BD2.3C )H = B162 + D161+ 2160+ 316-1+ C16-2 = 11162 + 13161+ 2160+ 316-1+ 1216-26) 24=16,因而四位二进制数可用一位十六进制数表
28、示。二进制数书写太长,常将二进制数转换成十六进制数书写。1.2 数制数制1.2.4 十六进制和八进制十六进制和八进制2、十六、十六二进制之间转换二进制之间转换二进制数转换成十六进制数方法: 从小数点开始,将二进制数的整数和小数部分每四位分为一组,不足四位的分别在整数的最高位前和小数的最低位后加“0”补足,然后每组用等值的十六进制码替代,即得目的数。000例1.2.6:(10111001011.01001)(10111001011.01001)B = ( ) = ( )H 5CB.4810111001011.01001小数点为界0B.C548?1.2 数制数制1.2.4 十六进制和八进制十六进制
29、和八进制2、十六、十六二进制之间转换二进制之间转换十六进制数转换成二进制数方法:将每一个十六进制码用等值的四位二进制码替代,保持小数点位置不变,即得目的数。例1.2.7: ( ( F15. 6 ) )H = ( ) = ( )B F 1 5 . 6000111110101.?111100010101.01101101.2 数制数制1.2.4 十六进制和八进制十六进制和八进制3、八进制、八进制1) 基数8个,数字符号0、1、2、3、4、5、6、7;2) 逢八进一,即1+7=10;3) 不同数位上的数具有不同的权值8i;4) 八进制数用下标 “ O ” 表示;5) 任意一个八进制数,都可按其权位展
30、成多项式的形式: ( 752.34 )O = 782+ 581+ 280+ 38-1+ 48-2因为23=8,因而三位二进制数可用一位八进制数表示。1.2 数制数制1.2.4 十六进制和八进制十六进制和八进制4、八、八二进制之间转换二进制之间转换二进制数转换成八进制数方法:从小数点开始,将二进制数的整数和小数部分每三位分为一组,不足三位的分别在整数最高位前和小数的最低位后加“0”补足,然后每组用等值的八进制码替代,即得目的数。例1.2.6:(10111001011.01001)(10111001011.01001)B = ( ) = ( )O 2713.222713.2210111001011
31、. 01001小数点为界003.1722?21.2 数制数制1.2.4 十六进制和八进制十六进制和八进制4、八、八二进制之间转换二进制之间转换八进制数转换成二进制数方法:将每一个八进制码用等值的三位二进制码替代,保持小数点位置不变,即得目的数。 例: (36.24)(36.24)O = ( ) = ( )B 3 6 . 2 4110.011010?11110.010111110.01011001.2 数制数制1.3 二进制的算术运算二进制的算术运算1.3.2带符号二进制的减法运算带符号二进制的减法运算 当涉及到负数时,就要用有符号的二进制数表示。有符号的二进制数表示: 在定点运算的情况下,有符
32、号的二进制数最高位表示符号位,用0表示正数,用1表示负数。其余部分用原码的形式表示数值位。例如: (+11)D =(0 1011) B (11)D =(1 1011) B1.3.2带符号二进制的减法运算带符号二进制的减法运算1. 二进制数的补码表示二进制数的补码表示在数字系统中,为了简化电路简化电路,常采用补码,以便将减法运算表示为加法运算。当二进制数为正数时,其补码、反码与原码相同。当二进制数为负数时,将原码的数值位逐位求反,得到反码;然后再在最低位加1得到补码。例1.3.6 分别计算出A = +6,B = 6 的原码、反码和补码。A原原 =0 110A反反 =0 110A补补 =0 110
33、B原原 =1 110B反反 =1 001B补补 =1 0101.3 二进制的算术运算二进制的算术运算1.3.2带符号二进制的减法运算带符号二进制的减法运算2. 二进制补码的减法运算二进制补码的减法运算减法运算原理:减去一个正数相当加上一个负数,AB=A+(B),对( B )求补码,然后进行加法运算。注意:进行二进制加法运算时,被加数补码与加数补码要位数要相等,即符号位对齐。得到的结果仍然是补码结果仍然是补码。例1.3.7 试用4位二进制补码计算 52。解:因为(52)补=(5)补+(2) 补 (5)补+(2) 补 =0 101+1 110 =0 011所以 52=3(5)补 = 0 101(2
34、) 补=1 110 0 1 0 1+ 1 1 1 01100.(2)原 =1 010(2)反 =1 1011自动丢弃1.3 二进制的算术运算二进制的算术运算1.3.2带符号二进制的减法运算带符号二进制的减法运算3. 溢出溢出例1.3.8 试用4位二进制补码计算5 + 7。解:因为(5+7)补=(5)补+(7) 补 (5)补+(7) 补 =0 101+0 111 =1 100 0 1 0 1+ 0 1 1 10011. . . 计算的结果为1 100表示4,而实际正确的结果应该为12。 产生错误的原因在于4位二进制补码中,有3位是数值位,它表示的范围是 8 +7,而本题结果需要4位数值位表示,因
35、而产生溢出。解决溢出的办法:进行位扩展。1.3 二进制的算术运算二进制的算术运算1.3.2带符号二进制的减法运算带符号二进制的减法运算4. 溢出的判别溢出的判别两个符号相反的数相加不会产生溢出,两个符号相同的数相加有可能产生溢出,如何判断是否产生溢出?由下列计算结果可以推知。 + 4+ + 3+ 7 0 1 0 0+ 0 0 1 11110 5+ 3 8 1 0 1 1+ 1 1 0 10001. . . + 2+ + 6+ 8 0 0 1 0+ 0 1 1 00001. .1 3+ 6 9 1 1 0 1+ 1 0 1 01110.100溢出的判别方法:计算结果中进位位与和数的符号位( b3
36、 )相反时,则运算结果是错误的,产生溢出。1.3 二进制的算术运算二进制的算术运算1.4 二进制代码二进制代码 数字系统中的信息分为两类:一类是数值,另一类是文字符号,包括控制符,如空格、回车等。 为了表示文字符号信息,往往也用一定位数的二进制数码表示,这些数码并不表示数量的大小,而仅仅是区别不同的事物。 以一定的规则编制代码,用以表示十进制数、字母、符号等的过程叫编码。码制:编制代码所要遵循的规则。 二进制代码的位数( n ),与需要编码的事件( 或信息 )的个数( N )之间应满足以下关系:2n-1N2n例如,十进制数数码符号为0、1、2、3、4、5、6、7、8、9 ,N=10二进制代码的
37、位数需要4位,24-11024 为了满足数字系统使用二进制数的要求,又适应人们使用十进制的习惯。通常使用4位二进制代码对十进制数字符号进行编码。称二十进制代码,简称BCD码Binary Code Decimal 。 BCD码,既有二进制的形式,又有十进制的特点。 十进制数中,只有10个数字符号:09;4位二进制代码,有16种组合;所以从16种组合中取出10种表示09有多种方案,每种方案产生一种BCD码。 常用的BCD码:有权码:8421码,2421码,5421码无权码:余3码,余3循环码1.4.1二二十进制码十进制码1.4 二进制代码二进制代码8421码,有权码码,有权码(5)D=0 23 +
38、 1 22+ 0 21+ 1 20=(0101)8421BCD例如:( 2 5 . 8 )D= ( )8421BCD 特点:8421码与4位二进制数一致。注意: 4位二进制数的1010、1011、1100、1101、1110、1111 (最后6个)不允许在8421码出现。(0001 0010 0000 1000)8421码8 4 2 1=(1208)D0010 0101 10001.4.1二二十进制码十进制码.1.4 二进制代码二进制代码1.4.1二二十进制码十进制码2421码,有权码码,有权码(5)D=1 21 + 0 22+ 1 21+ 1 20=(1011)2421BCD例如:( 2 5
39、 8 )D= ( )2421码 特点:对9自补代码,0和9、1和8、2和7、 3和6、 4和5的各位码 相反。注意: 4位二进制数中的0101、0110、0111、1000、1001、1010 (中间6个)不允许在2421码出现。(0010 0001 1110 1011)2421BCD2 4 2 1=(2185)D0010 1011 1110为了2421码唯一,规定2421码04(前5个)0开头, 59(后5个)1开头。0000-11110001-11100010-11010011-11000100-10110101?1.4 二进制代码二进制代码余余3码,无权码,码,无权码,8421码码 +
40、0011构成。构成。例如:( 2 5 8 )D =( )余3BCD 特点:1、对9自补代码。 2、两个余3码表示的十进制数相加,能正确产生进位。注意:4位二进制数的0000、0001、0010、1101、1110、1111 (前3个和后3个)不允许在余3码中出现。(1000 1001 1001 1011)余3BCD0101 1000 1011 = (5668)D 5+ 611 1000+ 1001000110011-11000100-10110101-10100110-10010111-10001.4.1二二十进制码十进制码1.4 二进制代码二进制代码1.4.1二二十进制码十进制码十进制数84
41、21码2421码5421码余3码余3循环码000000000000000110010100010001000101000110200100010001001010111300110011001101100101401000100010001110100501011011100010001100601101100100110011101701111101101010101111810001110101110111110910011111110011001010表1.4.1 几种常用的BCD代码1.4 二进制代码二进制代码格雷码首尾除掉3个得到典型的Gray码 二进制码0 0 0 00 0 0 1
42、0 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 1Gray码0 0 0 00 0 0 10 0 1 10 0 1 0 0 1 1 00 1 1 10 1 0 10 1 0 01 1 0 01 1 0 11 1 1 11 1 1 01 0 1 01 0 1 11 0 0 11 0 0 00 123456789101112131415十进制数(1)格雷码特点:任意两组相邻码之间只有一位不同。首尾数码即最小数0000和最大数1000之间也符合此特点,故称为
43、循环码。(2)格雷码作用:防止代码变化过程中产生短暂的错误。普通二进制码,+1或-1时可能引起若干位变化,由于电子器件变化速度不一致,便会产生短暂的错误代码。1.4.2格雷码格雷码01110110001000001000+11.4 二进制代码二进制代码 对各个字母和符号编制的代码叫字符代码。字符代码的种类繁多,目前在计算机和数字通信系统中被广泛采用的是ASCII码(American Standard Code for Information Interchange,美国信息交换标准代码),它共有128个代码,可以表示大、小写英文字母、十进制数、标点符号、运算符号、控制符号等,普遍用于计算机的键
44、盘指令输入和数据等 其编码表如表1.4.3所示。从表1.4.3 读码时,先读列码B7 B6 B5,再读行码B4 B 3B2 B1 ,则B7 B6 B5 B4 B3 B2 B1即为某字符的七位ASCII码。1.4.2 ASCII 码码1.4 二进制代码二进制代码例如:字母K列码是100,行码是1011,K的ASCII码是10010111.4.2 ASCII 码码1.4 二进制代码二进制代码1.5 二值逻辑变量与基本逻辑运算二值逻辑变量与基本逻辑运算逻辑运算:当0和1表示逻辑状态时,两个二进制数码按照某种特定的因果关系进行的运算。逻辑运算使用的数学工具是逻辑代数。逻辑代数与普通代数:逻辑代数与普通
45、代数一样,是由逻辑变量和逻辑运算组成,变量可以用A、B、C、x、y、z等字母表示。与普通代数不同,逻辑代数中的变量只有0和1两个可取值,它们分别用来表示完全两个对立的逻辑状态。在逻辑代数中,有与、或、非三种基本的逻辑运算。逻辑运算的描述方式:逻辑代数表达式、真值表、逻辑图、卡诺图、波形图和硬件描述语言(HDL) 等。与逻辑真值表与逻辑关系表A开关 B开关 灯亮 断 断断 合合 断合 合灭灭灭亮ABF1 01 10 10 00010AB1.与运算与运算 决定某一结论的所有条件同时成立,结论才成立,这种因果关系叫与与逻辑,也叫与运算或叫逻辑乘。 例如,对如图所示电路的功能作如下描述:“开关A闭合,
46、并且开关B闭合,则电灯F 亮”。真值表:真值表是输入变量所有取值组合与函数值间的对应关系列成表格。按二进制数顺序排列左侧:输入变量右侧:对应函数值1.5 二值逻辑变量与基本逻辑运算二值逻辑变量与基本逻辑运算1.与运算与运算与逻辑表达式 ( 逻辑函数式 ) 为:F = A B在不致于混淆的情况下,可以把符号“ ”省掉。在某些文献中,也有用“”、” 表示与运算。实现“与运算”的电路叫与门,其逻辑符号如图,其中图(b)为矩形符号,图(c)为特异形符号。 1.5 二值逻辑变量与基本逻辑运算二值逻辑变量与基本逻辑运算或逻辑真值表ABF1 01 10 10 011102.或运算或运算或逻辑:只要在决定某一
47、事件的各种条件中,有一个或几个条件具备时,这一事件就会发生。这种因果关系称为或逻辑关系。 1.5 二值逻辑变量与基本逻辑运算二值逻辑变量与基本逻辑运算或逻辑表达式 为:F = A + B在某些文献中,也有用“”、“”表示或运算。实现“或运算”的电路叫或门,逻辑符号如图,图(b)为矩形符号,图(c)为特异形符号。 3. 非运算非运算非逻辑:事件发生的条件具备时,事件不会发生;事件发生的条件不具备时,事件发生。这种因果关系称为非逻辑关系。 1.5 二值逻辑变量与基本逻辑运算二值逻辑变量与基本逻辑运算非逻辑表达式为:F = ,通常称A为原变量, 为反变量, 二者共同称为互补变量。 非逻辑的基本运算规
48、则为: = 1, =0非逻辑真值表AF0110AA01实现“非运算”的电路叫非门,逻辑符号如图,图(b)为矩形符号,图(c)为特异形符号。 4.几种常用复合逻辑运算几种常用复合逻辑运算(1).与非运算:“与非”逻辑是“与”逻辑和“非”逻辑的组合。 先“与”再“非”。 其表达式为:F = A B1.5 二值逻辑变量与基本逻辑运算二值逻辑变量与基本逻辑运算与非逻辑真值表ABF1 01 10 10 01101 实现“与非运算”的电路叫与非门,逻辑符号如图,图(a)为矩形符号,图(b)为特异形符号。 4.几种常用复合逻辑运算几种常用复合逻辑运算(2).或非运算:“或非”逻辑是“或”逻辑和“非”逻辑的组
49、合。 先“或”再“非”。 其表达式为:F = A+B1.5 二值逻辑变量与基本逻辑运算二值逻辑变量与基本逻辑运算或非逻辑真值表ABF1 01 10 10 00001实现“或非运算”的电路叫或非门,逻辑符号如图,图(a)为矩形符号,图(b)为特异形符号。 4.几种常用复合逻辑运算几种常用复合逻辑运算(3).异或运算:若两个输入变量的值相异,输出为1,否则为0。 相同为0,相异为1。其表达式为:1.5 二值逻辑变量与基本逻辑运算二值逻辑变量与基本逻辑运算异或逻辑真值表ABF1 01 10 10 01100 实现“异或运算”的电路叫异或门,逻辑符号如图,图(a)为矩形符号,图(b)为特异形符号。 B
50、ABABAL二进制码二进制码格雷码格雷码二进制码:B=Bn-1Bn-2B1B0 格雷码:G=Gn-1Gn-2G1G01. BG方法:Gn-1=Bn-1 Gi=Bi+1 Bi1.5 二值逻辑变量与基本逻辑运算二值逻辑变量与基本逻辑运算1110 1110例如:(1 0 1 1 )B = ( )格雷吗 2. GB方法:Bn-1=Gn-1 Bi=Bi+1 Gi10111011例如:(1 1 1 0 ) 格雷吗 = ( )B4.几种常用复合逻辑运算几种常用复合逻辑运算(3).同或运算:若两个输入变量的值相异,输出为0,否则为1。 相同为1,相异为0。其表达式为:1.5 二值逻辑变量与基本逻辑运算二值逻辑