资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,第,1,章数字逻辑概论,1.1,数字电路与数字信号,1.2,数制,1.3,二进制数的算术运算,1.4,二进制代码,1.5,基本逻辑运算,1.6,逻辑函数及其表示方法,5,、掌握基本逻辑运算、逻辑函数其表示方法,教学基本要求,1,、了解数字信号与数字电路的基本概念,2,、了解数字信号的特点及表示方法,3,、掌握常用二十、二十六进制的转换,4,、了解常用二进制码,特别是,8421 BCD,码,三次工业革命:,第一次是以蒸汽机的发明为标志的工业革命,单说工业革命指的是本次工业革命,代表性的国家是英国。第二次是,1870,年至,20,世纪初,主要是电力的应用,以及汽车和内燃机的发明,主要国家是德国、美国,这次革命造成德国崛起,挑战英国霸权,是一战发生的经济、科技动因。第三次是,20,世纪,80,年代至今的信息科技技术革命,最大成就是以互联网的应用,美国一枝独秀,遥遥领先,成为历史上最强大的超级大国。,1.1,数字电路与数字信号,电子技术是二十世纪发展最迅速、应用最广泛的技术。已使工业、农业、科研、教育、医疗、文化娱乐以及人们的日常生活发生了根本的变革。特别是数字电子技术,更是取得了令人瞩目的进步。,电子技术的发展是以电子器件的发展为基础的。,真空管,20,世纪初直至中叶,晶体三极管,1947,年,集成电路,60,年代初,70,年代末,微处理器,1.1.1,数字技术的发展及其应用,80,年代后:,ULSI,,,1 0,亿个晶体管,/,片 、,ASIC,制作技术成熟,目前,芯片内部的布线细微到亚微米,(0.130.09,m),量级,微处理器的时钟频率高达,3GHz,(,10,9,Hz,),90,年代后:,一片集成电路上有,40,亿个晶体管。,6070,代:,IC,技术迅速发展:,SSI,、,MSI,、,LSI,、,VLSI,。,10,万个晶体管,/,片。,专用集成电路,将来,高分子材料或生物材料制成密度更高、三维结构的电路,超大规模,甚大规模,发展特点,:,以电子器件的发展为基础,电子管时代,:,1906,年,福雷斯特等发明了电子管;电子管体积大、重量重、耗电大、寿命短。目前在一些大功率发射装置中使用。,电压控制器件,电真空技术,晶体管时代,:,电流控制器件,半导体技术,半导体二极管、三极管,器件,半导体集成电路,注解:,ASIC,(,Application Specific Intergrated Circuits,)即,专用集成电路,,是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。目前用,CPLD,(复杂可编程逻辑器件)和,FPGA,(现场可编程逻辑阵列)来进行,ASIC,设计是最为流行的方式之一,它们的共性是都具有用户现场可编程特性,都支持边界扫描技术,但两者在集成度、速度以及编程方式上具有各自的特点。,ASIC,的特点是面向特定用户的需求,品种多、批量少,要求设计和生产周期短,它作为集成电路技术与特定用户的整机或系统技术紧密结合的产物,与通用集成电路相比具有体积更小、重量更轻、功耗更低、可靠性提高、性能提高、保密性增强、成本降低等优点,严格的说,ASIC,不能算是学术名词,也不能算是技术,.,数字技术应用的典型代表是,电子计算机,,数字电子技术的发展衍生出计算机的不断发展和完善。,数字技术被广泛应用于:广播、电视、通信、医学诊断、测量、控制、文化误乐以及家庭生活等方面。,例如:,照相机,JPEG,(,静态影像压缩标准,),视频记录设备,MPEG,(,动态影像压缩标准,),交通灯控制系统,数码相机,智能仪器,计算机,数字技术,的应用,电子电路按功能分为,模拟电路,和,数字电路,。 现代数字电路由数字集成器件构造而成,逻辑门是基本的单元电路。根据电路的结构特点及其对输入信号响应规则不同,数字电路分为两个大类:,组合逻辑电路、时序逻辑电路。,1.1.2,数字集成电路的分类及特点,1.,数字集成电路的分类,从集成度来说,数字集成电路可分为:小规模(,SSI,)、中规模(,MSI,)、大规模(,LSI,)、 超大规模(,VLSI,)和甚大规模(,ULSI,)等五类。,表,1.1.1,数字集成电路的分类,分类,门的个数,典型集成电路,小规模,最多,12,个,逻辑门电路,中规模,12,99,计数器、加法器,大规模,100,9 999,小型存储器、门阵列,超大规模,1000,99 999,大型存储器、微处理器,甚大规模,10,6,以上,可编程逻辑器件、多功能集成电路,集成度,:,每一芯片所包含的门的个数。,2.,数字集成电路的特点,1,) 稳定性能高,结果的再现性好,2,) 易于设计,3,) 大批量生产,成本低廉,4,) 可编程性,5,) 高速度,低功耗,3 .,数字电路的分析、设计与测试,数字电路的研究对象是电路的输入与输出之间的逻辑关系。,分析工具:,逻辑代数。,电路逻辑功能的表达:,主要用真值表、功能表、逻辑表,达式、卡诺图和波形图。,(,1,) 数字电路的分析方法,数字电路的分析,:,根据电路确定,电路输出与输入之,间的逻辑关系。,(,2,) 数字电路的设计方法,数字电路的设计,:,从给定的逻辑功能要求出发,选择适当的逻辑器件,设计出符合要求的逻辑电路,。,设计方式,:,分为传统的设计方式和基于,EDA,软件的设计方式。,设计过程:,方案提出、验证和修改三阶段,。,传统的设计方式:,基于,EDA,软件的设计方式,:,传统的硬件电路设计全过程均由人工完成,硬件电路的验证和调试是在电路构成后进行的,故电路存在的问题只能在验证后发现。若问题大,要重新设计。需经反复调试、验证、修改完成。设计周期长,资源浪费大,不能满足大规模集成电路设计的要求。,是借助于计算机来快速准确地完成电路的设计。设计者提出方案后,利用计算机进行逻辑分析、性能分析和时序测试,如发现错误或方案不理想,可以重复上述过程直到得到满意的电路,然后进行硬件电路的实现。这种方法对于设计较复杂的数字系统,优点更为突出。,EDA,技术实现硬件设计软件化。,电路设计、 分析、仿真 、修订全通过计算机完成。,EDA,技术,以计算机为基本工具、借助于软件设计平台,自动完成数字系统的仿真、逻辑综合、布局布线等工作。最后下载到芯片,实现系统功能。使硬件设计软件化。,a,、设计:,在计算机上利用软件平台进行设计,原理图设计,VerlogHDL,语言设计,状态机设计,设计方法,EDA,(,Elect,ronics Design Automation,),技术,c,、下载,b,、仿真,d,、验证结果,实验板,下载线,测试设备为:数字电压表、电子示波器、逻辑分析仪,(,一种专用示波器)等。,具体测试技术将在实验课中详细介绍。,(,3,) 数字电路的测试技术,-,时间和数值均连续变化的电信号,如正弦波、三角波等,u,O,t,O,t,u,1.,模拟信号,1.1.3,模拟信号和数字信号,数字信号波形,2.,数字信号,-,在时间上和数值上均是离散的信号。,数字电路,和,模拟电路,:工作信号,研究的对象不同,,分析、设计方法以及所用的数学工具也相应不同,3.,模拟信号的数字表示,由于数字信号便于存储、分析和传输,通常都将模拟信号转换为数字信号,.,0,0,模拟信号,模数转换器,3,V,数字输出,0,0,0,0,1,1,模数转换的实现,模拟信号,通过取样电路后变成时间离散、幅值连续的取样信号,模拟电压信号,对取样信号进行量化并进行编码得,数字信号,1.1.4,数字信号的描述方法,模拟信号表示方式:,数字信号表示方式:,数学表达式,波形图,二值数字逻辑,逻辑电平描述的数字波形,电压,(V),二值逻辑,电 平,+5,1,H,(,高电平,),0,0,L,(,低电平,),逻辑电平与电压值的关系(正逻辑),1.,二值数字逻辑和逻辑电平,在电路中用低、高电平表示,0,、,1,两种逻辑状态,0,、,1,数码,-,表示数量时称二进制数,表示方式,二值数字逻辑,-,表示事物状态时称二值逻辑,注:,逻辑“,0”,和逻辑“,1”,表示彼此相关又互相对立的两种状态。不是表示大小。,例如:“是”与“非”、“真”与“假”、“开”与“关”、“低”与“高”等等 。,因而常称为数字逻辑。,(a),用逻辑电平描述的数字波形,(b) 16,位数据的图形表示,2.,数字波形,数字波形,-,是逻辑电平对时间的图形表示,.,分析一个数字系统时,因电路采用相同的逻辑电平标准,一般不标高、低电平的电压值,时间轴也可不标,高电平,低电平,有脉冲,非归零型,(一拍内用高电平代表,1,,低电平代表,0,),归零型,(一拍内有脉冲代表,1,,,无脉冲代表,0,),一般只有作为,时序控制信号,的时钟脉冲是,归零型,,,其他大多数数字信号都是非归零型。,数字信号,只有两个取值,故称为,二值信号,,,数字波形,又称为,二值位形图,。非归零信号的每位数据占用一个位时间。每秒钟传输数据的位数称为,数据率,或,比特率,。,无脉冲,(1),数字波形的两种类型,:,非归零型,归零型,1,位,1bit,一拍,T,:,一定的时间间隔,例,1.1.1,某通信系统每秒钟传输,1544000,位,(1.544,兆位,),数据,求每位数据的时间,。,解:,按题意,每位数据的时间为,(2),周期性和非周期性,周期,脉宽,非周期性数字波形,周期性数字波形,周期性数字波形常用周期,T,和,f,频率来描述。脉冲波形的脉冲宽度称为,脉宽,,它表示脉冲的作用时间。另一个重要参数是,占空比,q,(脉宽占整个周期的百分比)。,q,(,),=t,w,/T,*100,当占空比为,50,时,此时的矩形脉冲为方波。即,0,和,1,交替出现并持续占有相同的时间。,例,1.1.2,设周期性数字波形的高电平持续,6ms,,低电平持续,10ms,,,求占空比,q,。,解:,因数字波形的脉冲宽度,t,w,=6ms,,周期,T,=6ms+10ms=16ms,。,非理想脉冲波形,(3),实际数字信号波形及主要参数,几个主要参数,:,占空比,Q,-,表示脉冲宽度占整个周期的百分比,上升时间,t,r,和下降时间,t,f,-,从脉冲幅值的,10%,到,90%,上升,下降所经历的时间,(,典型值为几,ns,),例见教材,12,页,脉冲宽度,(t,w,)-,脉冲幅值的,50%,的两个时间所跨越的时间,周期,(T),-,表示两个相邻脉冲之间的时间间隔,t,r,脉冲宽度,t,w,0.5V,4.5V,2.5V,幅值,=5.0V,0.0V,5.0V,t,f,0.5V,2.5V,4.5V,(4),时序图,-,表明各个数字信号时序关系的多重波形图。,由于各信号的路径不同,这些信号之间不可能严格保持同步关系。为了保证可靠工作,各信号之间通常允许一定的时差,但这些时差必须限定在规定范围内,各个信号的时序关系用时序图表达。,1.2.1,十进制,1.2.2,二进制,1.2.3,十二进制之间的转换,1.2.4,十六进制和八进制,1.2,数 制,一、定义:,以,10,为基数的计数体制。,1.2.1,十进制,二、特点:,1,、任何一位数可以而且只可以用,0, 1, 2, 3, 4, 5, 6, 7, 8, 9,这十个数码表示。,2,、进位规律是“逢十进一”。即,9+1=10=110,1,+ 010,0,例如:,式中,,10,2,、,10,1,是根据每一个数码所在的位置而定的,称之为“权”。,3,、在十进制中,各位的权都是,10,的幂,而每个权的系数只能是,0,9,这十个数码中的一个。,三、一般表达式,:,位权,系数,在数字电路中,计数的基本思想是要把电路的状态与数码一一对应起来。显然,采用十进制是十分不方便的。它需要十种电路状态,要想严格区分这十种状态是很困难的。,一、特点,二、二进制数的一般表达式为,:,1,、任何一位数可以而且只可以用,0,和,1,表示。,2,、进位规律是:“逢二进一” 。,3,、各位的权都是,2,的幂。,1.2.2,二进制,位权,系数,例如:,1+1=,10,= 12,1,+ 02,0,例,1.2.1,试将二进制数,(01010110),B,转换为十进制数。,解:,将每一位二进制数乘以位权然后相加便得相应的十进制数。,位数太多,不符合人的习惯,不能在头脑中立即反映出数值的大小,一般要将其转换成十进制后,才能反映。,三、二进制的优点:,1,)、二进制的数字装置简单可靠,所用元件少易于电路实现,-,每一位数只有两个值,可以用管子的导通或截止,灯泡的亮或灭、继电器触点的闭合或断开来表示。,2,)、基本运算规则简单,运算操作方便,四、二进制的缺点:,(01010110),B,= 2,6,+ 2,4,+ 2,2,+ 2,1,=,(,86),D,二进制数的,最低位数码标示,二进制数的,最高位数码标示,五、二进制的波形表示,六、二进制数据的传输,(,串联,),七、二进制数据的传输,(,并联,),将一组二进制数据所有位同时传送。传送速率快,但数据线较多,而且发送和接收设备较复杂。,常用方法是,“按权相加”,。,一、二进制数转换成十进制数:,1.2.3,十二进制之间的转换,二、十进制数转换成二进制数:,1.,整数部分的转换(,基数除法,),将十进制数的整数部分连续不断地除以,2 ,直至商为零,所得余数由低位到高位排列,即为所求二进制数。,整数部分小数部分,例,1.2.2,(63),10,=( ? ),2,63,2,1=b,0,1=b,5,3,15,31,7,1=b,1,1=b,2,1=b,3,1=b,4,2,2,2,2,余数,故,(63),10,=( 111111 ),2,若十进制数较大时,则不必逐位去除,2,,可算出,2,的幂与十进制对比。,例,1.2.3,(,261),10,=(?),2,解:,2,8,=256,,,261 256 = 5,,,(5),10,=(101),2,(261),10,=(100000101),2,其它进制的数可以类推。,2.,小数部分的转换(,基数乘法),等式两边依次乘以,2,可分别得,b,-1,、,b,-2,.:,例,1.2.4,将,(0.706),D,转换为二进制数,要求其误差不大于,2,-10,。,解:,按上述方法,可得:,0.7062=1.4121 b,1,0.4122=0.8240 b,2,0.8242=1.6481 b,3,0.6482=1.2961 b,4,0.2962=0.5920 b,5,0.5922=1.1841 b,6,0.1842=0.3680 b,7,0.3682=0.7360 b,8,0.7362=1.4721 b,9,由于最后的小数小于,0.5,,根据“四舍五入”的原则,,b,10,应为,0,。所以,,(0.706),D,=(0.1011010010),B,,其误差,由此可见:,基数乘法是纯小数部分用来乘以基数,R,,直到乘积的小数部分为,0,(精确转换),或者小数部分虽不为,0,,但得到的位数已达到需要的精度(近似转换)为止。再将每次乘积的整数部分按得到的先后顺序排列,即为等值的,R,进制数的小数部分。可简记为,“,乘,R,顺取整,”。,基数的除法也可推广到,R,进制,简记为,“,除,R,倒取余,”。,一、特点:,1.2.4,十六进制和八进制,1,、八进制数以,8,为基数,采用,0, 1, 2, 3, 4, 5, 6, 7,八个数码表示任何一位数。,2,、进位规律是“逢八进一”。,3,、各位的权都是,8,的幂。,例:,(144),O,=,64+32+4=(100),D,八进制,二、二进制转换成八进制:,三、八进制转换成二进制:,将每位八进制数展开成三位二进制数,排列顺序不变即可。,转换时,由小数点开始,整数部分自右向左,小数部分自左向右,三位一组,不够三位的添零补齐,则每三位二进制数表示一位八进制数。,因为八进制的基数,8=2,3,,所以,可将三位二进制数表示一位八进制数,即,000,111,表示,0,7,如:,(10110.011),B,=,如:,(752.1),O,=,(26.3),O,(111 101 010.001),B,如:,(,0,11,010,.,101,1,00,),2,(?),8,3 2 5 4,故,:,(,11010.1011,),2,(,32.54,),8,如:,(,576.04,),8,(?),2,101,111,110,000,100,故:,(,576.04,),8,(,101 111 110 .000 1,),2,一、特点,:,1,、十六进制数采用,0, 1, 2, 3, 4, 5, 6, 7, 8, 9 , A,、,B,、,C,、,D,、,E,、,F,十六个数码表示。,2,、进位规律是“逢十六进一”。,3,、各位的权都是,16,的幂。,十六进制,二、二进制转换成十六进制:,三、十六进制转换成二进制:,因为,16,进制的基数,16=2,4,,所以,可将四位二进制数表示一位,16,进制数,即,0000,1111,表示,0-F,。,例,(111100010101110),B,=,将每位,16,进制数展开成四位二进制数,排列顺序不变即可。,例,(BEEF),H,=,(78AE),H,(1011 1110 1110 1111),B,例:,(,7AB.9,),16,(?),2,0111,1010,1011,1001,故:,(,7AB.9,),16,(,111 1010 1011.1001,),2,结论:,基数为 的数制之间数的转换可以用二进制数为桥梁。,这样使转换变得非常简单。,例,1.2.5,(,7EF.56,),16,(?),8,解,:,(,7EF.56,),16,(,0111,1110,1111,.,0101,0110,),2,(,0,11,111,101,111,.,010,101,1,00,),2,(3757.254,),8,四、优点 :,十六进制在数字电路中,尤其在计算机中得到广泛的应用, 因为:,1,、与二进制之间的转换容易;,2,、计数容量较其它进制都大。,假如同样采用四位数码,二进制最多可计至,1111B = 15D,;八进制可计至,7777O = 14095D,;十进制可计至,9999D,;十六进制可计至,FFFFH = 65535D,,即,64K,。其容量最大。,3,、计算机系统中,大量的寄存器、计数器等往往 按四位一组排列。,故使十六进制的使用独具优越性,。,几种数制之间的关系对照表,十进制数,二进制数,八进制数,十六进制数,0,1,2,3,4,5,6,7,8,9,10,00000,00001,00010,00011,00100,00101,00110,00111,01000,01001,01010,0,1,2,3,4,5,6,7,10,11,12,0,1,2,3,4,5,6,7,8,9,A,十进制数,二进制数,八进制数,十六进制数,11,12,13,14,15,16,17,18,19,20,01011,01100,01101,01110,01111,10000,10001,10010,10011,10100,13,14,15,16,17,20,21,22,23,24,B,C,D,E,F,10,11,12,13,14,将,R,进制数转换为十进制数:,是将,R,进制的数,“按权相加”,,即可得到与,R,进制数等值的十进制数。,例,1.2.6,(,1101.01,),2,(?),10,解:,例,1.2.7,解:,例,1.2.8,解:,注:,将十六进制转换为十进制数时,应将其字母,A,F,写成相应的十进制数。,小结:,将十进制数转换为非十进制数:,将十进制数转换为非十进制数时,应分为两部分进行。其中,,小数部分,的转换由基数乘法得到,而,整数部分,的转换则通过基数除法获得。最后将得到的结果用小数点连接起来。,例,1.2.9,(26),10,=,(?),2,解:,应该用基数除法进行,“除,2,倒取余”,得到。,故,(,26),10,(11010),2,例,1.2.10,(854),10,(,?,),8,解:,与上例相似,利用,“除,8,倒取余”,法,故,(854),10,(1526),8,若十进制数较大时,不必逐位去除,2,,可算出,2,的幂与十进制对比,,如:,(,261),10,=(?),2,由于,2,8,=256,,,而,261 256 = 5,,,(5),10,=(101),2,所以,(261),10,=(100000101),2,其它进制的数可以类推。,当十进制数较大时,有什么方法使转换过程简化,?,例,1.2.11,(,32.125,),10,(?),16,解:,分两部分进行,先用,“,除,16,倒取余,”法,得,到其,整 数部分,,再用基数乘法,将小数部分不断乘以基数,16,,直到乘积的,小数部分,为,0,(或者达到所要求的精度)为止,简称:,乘,16,顺取整,。具体为:,(,32,),10,(,20,),16,(,0.125,),10,(,0.2,),16,故:,(,32.125,),10,(,20.2,),16,1.3,二进制数的算术运算,0 + 0 = 0,,,0 + 1= 1,,,1 + 1 = 10,1.,二进制加法,方框中的,1,是进位,表示两个,1,相加“逢二进一”,1.3.1,无符号二进制数的算术运算,加法规则:,2.,二进制减法,减法规则:,0 - 0 = 0,,,1 - 1= 0,,,1 - 0 = 1,,,0 - 1 = 11,方框中,1,是借位位,表示,0,减,1,时不够减,向高位借,1.,3.,乘法运算和除法运算,1 0 1 0,1 0 1 0,0 1 0 1,0 0 0 0,1 0 1 0,0 0 0 0,1 1 0 0 1 0,所以,1010,0101=110010,例,1.3.1,计算两个二进制数,1010,和,0101,的积,例,1.3.2,计算两个二进制,1010,和,111,的商,1 0 1 0,1 1 0,1 1 1,1 1 1,1 0 1 0,1 1 1,1 1,所以,1010 111=1.011,1 1 1,1.,1,0,1,0,1.3.2,带符号二进制数,的减法运算,一,.,真值与机器数,我们之前所讨论的数都没有涉及符号(默认为正数) ,但是在实际应用中会碰到正数,也会碰到负数。因此,,一个数应该由两部分组成:数的符号和数的数值,。数的符号中,用“”表示正数,符号“”表示负数,而计算机中只认识“,0”,和“,1”,代码,不认识其他符号,所以约定:,用“,0”,表示“”符号,用“,1”,表示“”符号,。这样符号就数值化了。如:二进制数,0.1101,与,0.1101,在机器中的表示见下图所示:,为了区分“”、“”号数值化前后的两个对应数,即区别原来的数和它在计算机中表示的数,我们称后者为,机器数,,而前者为机器数的,真值,。即:,机器数:,一个数(连同符号位)在计算机中加以数值化后的表示形式。(符号数码化的数),真值:,符号位用“”、“”号表示且与机器数相应的数称为该机器数的真值。,注:,计算机是对机器数进行运算,而最终结果需要的又是真值。因此,机器数应尽可能满足下列要求:,1.,机器数的表示能被计算机识别,2.,机器数与真值的转换要方便,3.,机器数的运算规则要简单,由此可见,用“,0”,与“,1”,代替“”与“”号的机器数能满足上述前两个要求,但不一定满足第三个要求(因为其符号位具有符号的含义,在进行计算时,符号位可能不能象数值位一样进行运算,而需要单独处理)。目前,常用机器数有三种形式:,原码,反码,和,补码,。,二、原码,原码,的表示法又称,符号,数值表示法,。,用原码表示其真值时,第一位是符号位,且正数的符号位用“,0”,表示;负数的符号位则用“,1”,表示。其余各位是数的绝对值部分。,(+1011),原,=,0,1011,(-1011),原,=,1,1011,零的原码有两种表示形式。,+0,原,=,0,000,-0,原,=,1,000,并且,原码表示与真值的形式非常相似。所以,由真值求原码较易,但在计算机中,用原码来进行算术运算较烦,因为在进行加、减运算中,要根据具体参加运算的两个数的符号来确定两数的加、减。若是减法运算,尚需要比较两个数的绝对值,才能确定谁为被减数。这在具体的实现时,逻辑电路的结构将很复杂。若能将加、减按一种规则来运算,则电路结构将会简单些。为此,又找出了其它两种机器数的表示方法:,反码,和,补码,。,三、反码,用反码表示真值时,最左边一位是符号位,且“,0”,表示正数; “,1”,表示负数。对于正数,其反码的数值部分为真值的数值部分;对于负数,其反码的数值部分则为真值的数值部分按位求反,故称为反码。,零的反码有两种形式:,+0,反,=,0,000,-0,反,=,1,111,例,:,(,+1011,),反,=,0,1011,(,-1011,),反,=,1,0100,“补”的概念:,模:,系统的最大量程。,如钟表的最大量程为,12,。当表示的值超过系统,的最大量程(即模)时,自动将模丢失。,例:,13=12+1=1,(,mod12,),而若,4+8=12,(模) 则称,4,和,8,互为补数(,mod12,),即:,一个数加上其补数等于模。,也即:,一个数的补数等于模减去该数。,例:,3,的补数,=12-3=9,(,mod12,),当二进制数为正数时,其补码与原码相同;当二进制数为负数时,其原码的数值位逐位求反(即得到反码)然后在反码最低位加,1,得到补码。,四、补码,补码的最高位为符号位,正数为,0,,负数为,1;,零的补码只有一种形式:,+0,补,=-0,补,=,0,000,例:,-1011,补,=,1,0101,五、原码、补码和反码的相互转换,机器数的三种代码相互转换见下图所示:,x,原,真值,x,x,补,x,反,+,- 0,1,数值位不变,符号位不变,数值位,不变,(,当符号位为,0,时,),求反加,1,(,当符号位为,1,时,),符号位不变,数值位,不变 (,当符号位为,0,时,),求反 (,当符号为为,1,时,),小结:,由上图可得原码、反码和补码的几个性质如下:,1.,真值为正时,,x,原、,x,反,及,x,补,的最高位(即符号位)为,0,;真,值为负时,,x,原、,x,反,及,x,补,的最高位(即符号位)为,1,。,2.,真值为正时,,x,原,x,反,x,补,,且它们的数值位与真值,x,的数值位完全相同;真值为负时:,x,原,与真值的数值位完全相同,,x,反,为真值,x,的各位按位求反,,x,补,则为真值,x,的各位求反加,1,。,3.,真值为,0,时,,x,原,与,x,反,均有两种表示形式,即,+0,和,-0,,且它们的数值相等。而,x,补,的零只有一种表示形式。,4.,补码的数域要比原码和反码大。,并且,,x,原、,x,反,及,x,补,均能被计算机识别;他们与真值间的转换以原码最为方便,反码其次,补码最差。,六、,二进制补码的减法运算,补码加、减运算的基本理论是:,1.,符号位与数值位一起参加运算,且符号位产生的进位 自动丢失。,2.,其加、减运算规则为:,x+y,补,=x,补,+y,补,x-y,补,=x,补,+-y,补,由此可见:补码的加、减运算可统一为一种运算,加法运算。,3.,零的补码表示具有唯一性,故数“,0”,用补码表示后,不会给运算器的识别和运算带来不便。,4.,运算结果仍为补码,。,例,1.3.3,试用,4,位二进制补码计算,5-2,解:,(5-2),补,=(5),补,+ (-2),补,=,0,101+,1,110 =,0,011,0101,+1110,10011,丢失,例,1.3.4,若,x=0.1100,y=0.0010,,求,x+y,补,及,x-y,补,。,解:,x,补,=0.1100 y,补,=0.0010,-y,补,=1.1110,x+y,补,=x,补,+y,补,=0.1100+0.0010=0.1110,x-y,补,=x,补,+-y,补,=0.1100+1.1110=0.1010,七、 溢出,例,1.3.5,试用,4,位二进制补码计算,5+7,解,:,因为,(5+7),补,=(5),补,+ (7),补,=,0,101+,0,111,=,1,100,0 1 0 1,+0 1 1 1,11 0 0,解决溢出的办法,:,进行位扩展。,结论:,两个同号数相减或异号数相加不会产生溢出,但两个同号数相加或异号数相减有可能产生溢出。,当方框中的进位位(符号位的进位)与数的最高位的进位位相异时,则运算结果是错误的,产生溢出。,如何判断是否产生溢出?,正确,溢出,八、 溢出的判别,1.4,二进制代码,建立二进制代码与十进制数字、字母、符号等的一一对应的关系称为,编码,。,二进制代码的位数,(n),与需要编码的事件(或信息)的个数,(N),之间应满足以下关系:,代码不表示数量的大小,只是不同事或物的代号,为了便于记忆和处理,在编制代码时总要遵循一定的规则,这些规则就称为,码制,。,用二进制数码对事物进行表示,称为二进制代码。,数字系统中的信息分两类:,数值,字符,(代码),1.4.1,二,十进制码,(,数值编码,),(BCD,码,- Binary Code Decimal,),用,4,位二进制数来表示一位十进制数中的,09,十个数码。,从,4,位二进制数,16,种代码中,选择,10,种来表示,09,个数码的方案有很多种。每种方案产生一种,BCD,码。,十进制数,8421,码,2421,码,5421,码,余,3,码,余,3,循环码,0,0000,0000,0000,0011,0010,1,0001,0001,0001,0100,0110,2,0010,0010,0010,0101,0111,3,0011,0011,0011,0110,0101,4,0100,0100,0100,0111,0100,5,0101,1011,1000,1000,1100,6,0110,1100,1001,1001,1101,7,0111,1101,1010,1010,1111,8,1000,1110,1011,1011,1110,9,1001,1111,1100,1100,1010,表,1.4.1,几种常用,的,BCD,代码,余码的特点,:,当两个十进制数的和是,10,时,相应的二进制编码正好是,16,,于是可自动产生进位信号,而不需修正。,0,和,9, 1,和,8,.5,和,4,的余码互为反码,这在求对于,10,的补码很方便。,余,3,码循环码,的特点,:,相邻的两个代码之间仅一位的状态不同。按余,3,码循环码组成计数器时,每次转换过程只有一个触发器翻转,译码时不会发生竞争冒险现象。,有权码,的特点,:,编码与所表示的十进制数之间的转算容易。,如,(10010000),8421BCD,=(90),10,对于一个多位的十进制数,需要有与十进制位数相同的几组,BCD,代码来表示。,例如:,不能省略!,不能省略!,对于有权,BCD,码,可以根据位权展开求得所代表的十进制数。,例如:,BCD,8421,0111,(,),D,7,=,1,1,2,1,4,1,8,0,+,+,+,=,(,),D,BCD,2421,7,1,1,2,0,4,1,2,1,1101,=,+,+,+,=,1.4.2,格雷码,格雷码是,一种,无权码,。,其编码如,28,页,表,1.4.2,所示。,二进制码,b,3,b,2,b,1,b,0,格雷码,G,3,G,2,G,1,G,0,0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111,0000,0001,0011,0010,0110,0111,0101,0100,1100,1101,1111,1110,1010,1011,1001,1000,编码,特点,是:,任何,两个相邻代码之间仅有一位不同。,该特点是其它所有码不具备的,常用于模拟量的转换。当模拟量发生微小变化,而可能引起数字量发生变化时,,格雷码仅仅改变一位,这与其它码同时改变,2,位或更多的情况相比,更加可靠。,例如,,,8421,码中的,0111,和,1000,是相邻码,当,7,变到,8,时,四位均变了。若采用格雷码,,0100,和,1100,是相邻码,仅最高一位变了。,1.4.3 ASCII,码,(,字符编码,),ASCII,码即美国标准信息交换码。,它是用七位二进制码表示的,其编码见教材,28-29,页 表,1.4.3A,和表,1.4.3B,。,它,共有,128,个代码,,可以表示大、小写英文字母、十进制数、标点符号、运算符号、控制符号等,普遍用于计算机的键盘指令输入和数据等,。,小 结,:,用,0,和,1,组成的二进制数可以表示数量的大小,也可以表示对立的两种逻辑状态。数字系统中常用二进制数来表示数值。,在微处理器、计算机和数据通信中,常采用十六进制。任意一种格式的数可以在十六进制、二进制和十进制之间相互转换。,二进制数有加、减、乘、除四种运算,加法是各种运算的基础。,特殊二进制码常用来表示十进制数。如,8421,码、,2421,码、,5421,码、余三码、余三码循环码、格雷码等。,本章作业,: P36-37,1.1.2,; 1.1.4 ; 1.2.1;,1.4.1(1)(3); 1.4.3(2)(3),
展开阅读全文