




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章1、二进制十进制之间的转换1101.01=1*23+1*22+0*21+1*20+0*2-1+1*2-28.125 = 1000.001 (8除2取余等于1000,0.125乘2取整等于001)2、二进制十六进制之间的转换1010.0101 = A.5整数部分每4位写成一位16进制数,不足4位则在左侧补0。小数部分每4位写成一位16进制数,不足4位在右侧补03、逻辑电路四种符号记住&(与),1(或),=1(异或),1(非)X(与),+(或) ,+(异或),反4、两进两出半加器,三进两出全加器,两数相与得进位,两数异或得其和5、原码、反码与补码 原码就是前面所介绍的二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。 反码表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。 补码表示法规定:正数的补码与其原码相同;负数的补码是在其反码的末位加1。 6、布尔代数的运算规律:恒等式、交换律,结合律,分配率,摩根定理。第二章1、ALU,算术逻辑单元,负责二进制的四则运算以及逻辑运算2、触发器 RS两端输入完成置位复位,也可S和CLK配合置位,R和CLK配合复位? RS触发器由两个与非门组成,且有反馈回路。所以上一时刻的输出状态影响后一时刻的出状态。? 触发器状态的约定: 触发器有两个输出端,分别为Q端和Q端,这两个输出端的状态在正常工作时总是相反的,为了在研究中能统一对触发器所处状态的理解,通常把触发器的Q端所处的状态称为触发器的状态. Q=0时,称触发器处于“0”态. Q=1时,触发器处于“1”态。 Qn :前一时刻的状态称为现态(原态)。 Qn+1:后一时刻的状态称为次态(新态)。 R :置“0”端(复位端) S :置“1”端(置位端)时标RS触发器与基本RS触发器的区别是: 1) 触发器的工作由CLK脉冲控制。 2) 即使RS端有数据输入,但CLK脉冲高电平未至,触发器仍不工作,只有当CLK脉冲高电平到达时,触发器的状态才会进入工作状态(基本RS则只要RS端数据一到,触发器就工作)。这样便于控制触发器 DD高则置位,D低则复位 JKJK的取值不同可出现四种状态:自锁,复位,置位,翻转3、寄存器 可控缓冲寄存器(D触发器):L门高电平使数据装入,低则自锁原来的数据。 移位寄存器(D触发器):输入是1,左移则是在CLK前沿时00000001001101111111输入是1,右移则是在CLK前沿时00001000110011101111计数器(JK触发器): 4位计数器可从0到15计数,在CLK后沿时0000000100100011常见的寄存器有: 缓冲寄存器:用以暂存数据; 移位寄存器:能够将其所存的数据一位一位地向左或向右移; 计数器:一个计数脉冲到达时,会按二进制数的规律累计脉冲数; 累加器:用以暂存每次在ALU中计算的中间结果。计数器(counter)也是由若干个触发器组成的寄存 器,它的特点是能够把存储在其中的数字加1。? 计数器的分类:行波计数器 1. 行波计数器由JK触发器构成。2. 各触发器的J,K端都是悬浮的,这相当于J,K端都是置1的状态,表示各位都处于准备翻转的状态。3. 当时钟脉冲下降沿到来时,计数器开始计数。4. 二进制计数。 同步计数器 环形计数器 程序计数器4、三态输出器:E门,E=1,B=A,即A的值传给B,E=0,AB之间高阻记忆元件是由触发器组成的,而触发器只有两个状态:0和1,所以每条信号传输线只能传送一个触发器的信息(0或1)。? 如果一条信号传输线既能与一个触发器接通,也可以与其断开而与另外一个触发器接通,则一条信息传输线就可以传输随意多个触发器的信息了。? 三态输出电路(三态门)就是为了达到这个目的而设计的。三态门(E门)和装入门(L门)一样,都可加到任何寄存器(包括计数器和累加器)电路上去。这样的寄存器就称为三态寄存器。L门专管对寄存器的装入数据的控制;E门专管由寄存器输出数据的控制。有了L门和E门就可以利用总线结构,使计算机的信息传递的线路简单化,控制器的设计也更为合理而易于理解了。5、存储器分为ROM和RAM,一个16*8的存储器表示有16个存储单元,每个单元有8位数据,16个存储单元需要4跟地址线译码选择。存储器(memory)是计算机的主要组成部分。它既可用来存储数据,也可用以存放计算机的运算程序。 存储器由寄存器组成,可以看做一个寄存器堆,每个存储单元实际上相当于一个缓冲寄存器。只读存储器ROM:用以存放固定程序的存储器,一旦程序存放进去之后,即不可改变。随机存储器RAM:又叫做读写存储器。它和ROM区别在于这种存储器不但能读取已存放在其各个存储单元中的数据,而且还能够随时写进新的数据,或者改写原来的数据。因此,RAM的每一个存储单元相当于一个可控缓冲寄存器。? 随机存储器分为:静态RAM和动态RAM静态RAM:静态RAM常用双极型晶体管触发器作为记忆元件,只要有电源加于触发器,数据即可长期保留。动态RAM:动态RAM则用电容及MOSFET作为记忆元件。由于电容会漏电,因而常需“刷新”,这就是要求每隔2ms充电一次,为此还须另加一刷新电源。课本37页例2.2第三章指令系统:就是用来编制计算程序的一个指令集合。? 这台微型机有5条指令:LDA将数据装入累加器A;ADD进行加法运算;SUB进行减法运算;OUT输出结果;HLT停机。? 5条指令在一起就称为这台计算机的指令系统。机器周期:执行一条指令的时间为一个机器周期。机器周期又可分为取指周期和执行周期。取指过程和执行过程机器都得通过不同的机器节拍。第四章1、微处理器由算术逻辑部件ALU、控制部件、寄存器和片内总线等构成。第一代微处理器是1971年Intel的4004;第二代是1974年的8080;70年代后期开始使用VLSI,8086属于第三代;第四代是1985年的80386。2、8086/8088CPU具有20根地址线,16根数据线(8088是8位数据线),主频5M。其结构见书73页。内部结构(1)、功能结构:执行单元(EU):翻译指令代码,发出相应控制信息总线接口单元(BIU):与存储器、IO端口传送信息 (2)、内部寄存器: (1) 4个通用寄存器:AX,BX,CX,DX。一般用来存储数据。此外,还有额外功能,如AX常作为累加器BX常用作基址寻址器,存放段内偏移地址CX常用作计数器,常常将循环次数用它来存放DX常用来存放输入输出的端口地址,用于IO端口简介寻址(2) 4个专用寄存器:SP,BP,SI,DI SP存放堆栈指针(堆栈地址上低下高,SP指向栈顶,参考书116),BP是基址寻址器,SI、DI是变址寻址器。BP、SI、DI也可存放数据用 (3)4个段地址寄存器:代码段CS,数据段DS,堆栈段SS,附加段ES(4)标志位FR(共16位:6个状态位,3个控制位,7位未用)(5)指令指针寄存器IP:用于寻址当前需要取出的指令字节,程序员不能对它直接操作(6)标志寄存器FR的9位标志位:?CF(进位标志)算术操作最高位是否有进位或借位。有=1,无=0?ZF(零标志)操作结果是否为0 。是=1; 否=0?OF(溢出标志)此次运算是否发生了溢出。是=1; 否=0。还可根据如下法则判断:加法:两个操作数符号相同,结果符号不同时,OF=1;减法:两个操作数符号相反,结果符号与减数相同,OF=1.?IF(中断标志)是否接受可屏蔽中断请求。是=1;否=0?PF(奇偶标志)数据最低8位中1的个数为偶数=1; 数据最低8位中1的个数为奇数=0?AF(辅助进位标志)D3D4位产生了进位或借位=1; D3D4位无进位或借=0?SF(符号标志)结果最高位为1 =1; 结果最高位为0=0?DF和TF3、存储器结构8086/8CPU有20根地址线,但是内部所有寄存器均为16位,那么如何产生20位的物理地址,把存储空间分为若干个逻辑段,每个段最多64K字节。然后每段的首地址用16位表示(段基址,存于段地址寄存器CS,DS,SS,ES中),然后段内的相对地址用16位的通用寄存器来存放(偏移量,存于IP或SP中)。这样,段基址左移4位再加上偏移量就形成了20位的物理地址CS=2000H,IP=2200H。物理地址=CS左移四位+IP=20000+2200=22200H物理地址与逻辑地址:4、物理地址是实际地址,具有20位的地址值,一个物理地址可以唯一标识1M存储空间的一个字节的地址。逻辑地址是由段基址和偏移地址组成的,程序以逻辑地址编址。物理地址 = 段基址X16+偏移地址5、8086的工作周期一个总线周期分为四个时钟周期,每个时钟周期分别称为T1,T2,T3,T4。如果读写数据未完成,会在T3后插入Tw状态,如果周期空闲,则维持T1状态6、8086有40个引脚,通过这40个引脚向地址、数据、控制总线发出地址信息,数据信息以及控制信息,从而实现微机系统的读写等操作。其中reset引脚是复位信号,该信号出现后,CPU便结束当前操作,并把标志寄存器、DS、ES、SS、IP、以及指令队列清零,把CS置位FFFFH,当复位信号变为低电平时,CPU从FFFF0处开始执行程序。Ready引脚接收内存或IO送来的信号,CPU在T3状态对Ready信号采样,低电平则说明内存或外设没有准备好,需要插入Tw,高电平则进入T4。7、CPU的工作模式最小组态模式当CPU引脚MN/MX界高电平时,此时构成小规模应用系统,CPU提供所有总线信号最大组态模式当CPU引脚MN/MX界低电平时,此时构成大规模应用系统,CPU和8288总线控制器、8289总线仲裁器共同管理总线信号8、8086做小工作模式的典型配置,见书85页。8284提供时钟脉冲,8282提供地址锁存(因为地址数据线是分时复用的,所以用它来区分),8286是CPU与数据总线之间的缓冲器,提供双向的数据缓冲驱动功能8284时钟发生器为CPU提供基准的时钟脉冲CLK以及RESET、READY信号。8282具有8位输入输出端。所以可采用3个8282来与CPU的A0A19连接,以便锁存驱动地址信息,CPU的ALE接8282的STB引脚,ALE高电平地址信号直通,低电平锁存地址,BHE有效表示数据线高八位可用。8286具有8位双向输入输出端,T引脚控制方向,与CPU的DT/R连结。高电平自CPU输出,低电平CPU接收数据,OE控制输出,与DEN连结。有效允许输出,反之不允许。8286的A0A7与CPU的AD0AD15连结(两个8286),传送数据时,8282把AD0AD15上的地址信号锁存起来,8286开始传送数据最小工作模式是一个以8086为主体的单处理器系统,所有控制信号均由CPU直接提供。最小工作模式系统包括硬件如下:一片时钟发生器8284A;三片地址锁存器8282/8283;两片数据收发器8286/8287;8284A是8086CPU系统的时钟发生器芯片,它为8086CPU系统提供所需要的时钟信号、复位信号(RESET) 和就绪信号(READY)在最小模式下,CPU必须配有8282、8284、8286才能构成整个微处理器系统,才能通过地址、数据、控制总线与外部设备联系,控制外设工作。在最大模式下,除了上述还需要配置8288总线控制器,由8288对处理器发出的控制信号进行变换和组合,最终由8288产生总线控制信号,而不是由CPU直接产生8086的最大工作模式需要总线控制器8288和总线仲裁器8289配合。总线控制器8288:与CPU合作来控制总线。从8284接受CLK提供时钟脉冲,从CPU接收S0S2状态,并译码。从而产生各种控制信号。如读写存储器、IO等信号,输出ALE控制8282,输出DEN控制8286,INTA与DMA控制器8259相连,接受中断信号总线仲裁器8289:与8288、CPU一起和其他主控者构成多主控的微机系统8086工作在最大模式时,不直接产生控制信号,而是在每个总线周期开始之前输出状态信息S2,S1,S0,用于指示该总线周期的操作类型。8288总线控制器对S2,S1,S0,译码,产生各种命令和控制信号。总线裁决器8289与总线控制器8288相互配合,可解决多个处理器同时申请使用系统总线的问题。在有多个主控器同时要求使用总线时,由8289总线裁决器进行裁决,裁决方式有三种:并行优先级裁决,串行优先级裁决,循环优先级裁决。4、系统操作一个微机系统为了完成自身的功能,需要CPU执行多种操作,其中主要有:(1)、系统的复位和启动操作:从内存FFFF0处开始执行(2)、总线操作A、总线周期的概念CPU对外的各种操作都需要通过总线,称为“总线操作”。不同的总线操作需要不同时间和信号,完成特定的总线操作的时间就被称为该操作的“总线周期”典型的总线周期由四个时钟周期构成(T1T4),每个时钟周期叫做一个“T状态”此外,由于外设或存储器速度跟不上CPU,所以会出现在一个总线周期内无法完成一次总线操作,故需要插入一个或多个TW状态当执行完一个总线周期后,不立即执行下一个总线周期。那么,系统总线处于空闲状态,即执行空闲周期T。B、读总线操作:CPU从存储器或IO设备读入数据的操作。由CLK提供时钟脉冲,包括T1T4四个状态,若外设或存储器慢还可以插入TW状态。C、写总线操作上述操作具体见书6365页(3)、总线保持:一般情况下所有总线都由CPU来控制,但是也可以由其他芯片控制。当有其他芯片要求控制总线时,先向CPU提出请求(HOLD信号),CPU会对HOLD引脚监测,当发现由请求且CPU同意让出总线时,便发出HELD信号通知芯片接管总线。此时,CPU一些引脚处于高阻悬空状态,总线与CPU无联系。芯片可以接管并使用总线,如DMA控制器可以申请对总线的控制。9、8086的功能(1)系统的复位和启动 8086要求复位信号至少有4个时钟周期的高电平,如果是初次加电启动则要求大于50us的高电平。复位或启动后,系统从FFFF0处开始执行程序。 (2)总线读,见书96至99(3)总线写,见书96至99(4)中断操作8086可以处理256种中断,可以分类如下:硬件中断是由外部的硬件产生的;软件中断是程序中的某条指令对标志寄存器的某个标志设置而产生的。非屏蔽中断通过CPU的NMI引脚接入,不受IF标志屏蔽;可屏蔽中断从CPU的INTR脚接入,只有IF=1时,可屏蔽中断才可以进入。中断向量是中断处理子程序的入口地址,每个类型的中断对应一个中断向量。内存中的000003FF区域设置了一个中断向量表,前5个是专用中断向量,比如类型2是非屏蔽中断,类型0是除数为0中断。可屏蔽中断请求的响应过程当CPU的INTR引脚收到一个中断请求信号,并且IF标志为1,则CPU会在当前指令执行完毕,开始响应外部的中断请求,具体如下:(1)8086在连续的两个总线周期中发出INTA中断请求响应信号(2)在第二个INTA信号期间,中断源经过数据总线向8086发出一字节的中断类型码,8086收到后放入暂存器(3)8086保护现场:标志寄存器入栈,清除IF、TF标志位,将断点保护到堆栈中,即CS,IP值入栈。(4)8086将中断类型码乘4后得到中断向量表的入口地址,从此地址开始的4个单元中读出中断服务程序的入口地址(即IP,CS的值)(5)8086从此地址取指令执行,使控制转向中断处理过程。注:在第四步中,比如中断类型是17H,则其乘以4以后得到005CH,因此005C、005D、005E、005F四个单元中存放的数据就是中断服务子程序的入口地址,比如分别存放的是90H、78H、45H、23H,那么7890是偏移地址放入IP内,2345是段基址,放入CS内。然后程序从此地址开始执行中断服务子程序。?中断处理子程序的结构模式:见书105页。?软件中断:用一条指令使CPU进入中断处理子程序,不管IF的取值即可执行(但仍受TF(单步中断标志)的影响)。软件中断执行过程中,如遇非屏蔽中断,则执行完当前指令后响应;如遇可屏蔽中断,则是IF标志而定。8086/8088有20根地址线,具有220 = 1M字节的存储器地址空间。? 内存单元按照00000HFFFFFH来编址。? 8086系统中,将1M字节的存储空间分成两个512K字节的存储体,一个存储体中包含偶 数地址,另一个存储体中包含奇数地址,两个存储体之间采用字节交叉编制方式。(5)总线保持一般情况下所有总线都由CPU来控制,但是也可以由其他芯片控制。当有其他芯片要求控制总线时,先向CPU提出请求(HOLD信号),CPU会在每个时钟周期的上升沿对HOLD引脚监测,当发现由请求且CPU同意让出总线时,便在T4或者空闲的T1状态发出HELD信号通知芯片接管总线。此时,CPU一些引脚处于高阻悬空状态,总线与CPU无联系。芯片可以接管并使用总线,如DMA控制器可以申请对总线的控制。8、第五章指令的一般格式: 指令助记符操作数,操作数 ;注释操作数的一般形式: 1.立即数操作数 2.寄存器操作数 3.存储器操作数 4.I/O端口操作数 注意:操作个数可以一个、二个或三个1、CPU的寻址方式:指令里需要操作的数据来自什么地方立即数寻址:操作数是一个立即数。MOV AL 80H注意:立即数寻址数据可以从指令中直接取得。立即寻址方式的指令主要用来对寄存器赋值。因为操作数可以从指令中直接取得,不需要运行总线周期。立即数可以为8位,16位,规定立即数只能是整数,不能是小数,变量或者其他类型的数据。立即数只能作为源操作数。寄存器寻址:操作数在寄存器内。 INC CX 注意:寄存器寻址不需要使用总线周期。 直接寻址:操作数在内存中,需注意内存的地址是由段基址和段内偏移(有效地址)组成的。若没有指定,默认段地址存放在DS中,而有效地址则在指令中给出。如:MOV AX 1070,如DS=2000H,则2000H是段基址,1070则是有效地址。因此需要到内存的21070以及21071取出数据存入AX中。注意:1.数据存储在存储器中,存储单元的有效地址由指令中直接指出。2.直接寻址方式是存储器寻址中最简单的寻址方式。3.存储器直接寻址方式如果不加说明,则操作数默认在数据段。若操作数在其他段,则必须在地址前加以说明。这种说明称为“段超越前缀”。4.用符号代替数值地址,此时,VALUE为存放操作数单元的符号地址。寄存器间接寻址:操作数在内存中,默认段基址在DS中,有效地址由寄存器指出。寄存器可以是BX(数据段基址寻址)、BP(堆栈段基址寻址)、SI(变址寻址)、DI(变址寻址)。需要注意的是如果有效地址在BP中,则段基址在SS中。基址+变址的寻址:EA = BX或BP+SI或DI寄存器间接寻址根据使用的寄存器不同分为: 以BX寄存器进行间接寻址数据段基址寻址 以BP寄存器进行间接寻址堆栈段基址寻址注意:寄存器间接寻址方式只能用BX、SI、DI、BP寄存器,不能用DX、AX、CX寄存器。如果指令中指定的寄存器是BX、SI和DI,在没有加段超 越前缀的情况下,操作数在数据段(DS)。如果指令中指定的寄存器是BP,在没有加段超越前缀的情况下,则操作数必定在堆栈段(SS)寄存器相对寻址方式:寄存器如果是BX,SI,DI,指示的是数据段(DS)寄存器如果是BP,指示的是堆栈段(SS)基址变址寻址方式:基址寄存器一般为BX或BP,变址寄存器为SI或DI但指令中不能同时出现两个基址或两个变址寄存器。一般情况下,由基地址决定哪一个段寄存器作为段地址2、传送类指令MOV:寄存器之间,寄存器和内存之间的数据传送;立即数送到寄存器或内存PUSH、POP:PUSH是把字压入栈,POP是把字弹出栈;注意栈的地址是上小下大。XCHG:交换寄存器之间、寄存器内存之间的字节或字(会影响标志位)。LEA:将某个内存地址的有效地址(段内偏移量)送入寄存器,源操作数必须是一个内存地址,目的操作数必须是一个16位的寄存器。注意:MOV AX 1070H和LEA AX 1070H 的区别MOV是把1070,1071两个地址所存放的内容送入AX,LEA是把1070这个地址送入AXLDS和LESIN、OUT:累加器AX或AL与IO端口之间的数据传送,IN是从IO读入,OUT输出3、数据操作类指令:均会影响标志位ADD:不带进位加法,执行两个字或字节的相加操作。ADC:和ADC一样,只是需要把CF的值也加在和中INC:将操作数内容加1,用于循环程序中修改指针和循环次数SUB:不带进位减法,执行两个字或字节的相减操作。SBB:和SUB一样,只是还需要把CF的值减掉DEC:将操作数的值减1NEG:取补码,实际是用0减去操作数。CMP:执行两数相减,但不送回结果,只影响标志位逻辑运算:NOT、AND、OR、XOR:AND对一个数据指定位清0,如AND AL,0FH。对AL的高四位清0OR对一些制定位置1,如OR AL,02。对AL的D1位置1XOR用于对某个寄存器清0,如XOR AX, AX。则AX清0TEST用于检测指定位是否为0,如TEST AL 01,就是判断AL的D0位的取值。如果ZF=1,说明D0=0;ZF=0,说明D0=1。逻辑移位:SHL、SHR和算数移位:SAL、SARSHL和SAL:功能一样,每向左移位一次,最低位补0,最高位进入CF。SHR和SAR:SHR向右移位一次,最高位补0;SAR则是最高位保持不变。4、串操作指令:MOVSCMPSSCASLODSSTOS重复前缀REP,表示无条件重复字符串指令,直到满足CX寄存器中指定的次数5、控制类指令:JMP无条件转移、RET过程返回、JE等于则转移、JZ结果为0则转移、JNE、JNZ、LOOP 循环进位标志:CLC、STC。方向标志:CLD、STD。中断标志:CLI、STI6、标示符的命名规则第六章1、分支程序,见书141,例子6.32、循环程序,见书144,例子6.53、子程序子程序调用与返回由CALL和RET指令实现。子程序调用过程如下:保护现场参数传递恢复现场,详见书147第七章汇编指令:如 ADD AX,BX;MOV AX,BX 是在程序运行期间由计算机来执行的。? 伪指令(伪操作):是汇编程序对源程序汇编期间由汇编程序处理的,它本身不产生对应的机器目标代码。? 宏指令:它是一个指令序列.汇编时凡有宏指令语 句的地方都将用相应的指令序列的目标代码插入.1.汇编语言源程序就是用汇编语言编写的程序,简称汇编语言程序。2.源程序必须保存为扩展名为.asm的文件。3. 指令类型: 1) 汇编指令 2) 伪指令 3) 宏指令第八章1、概述:I/O系统负责主机与外界进行信息交换。在微机系统中,各种I/O设备(键盘、显示器、打印机)通过I/O接口与系统相连,在接口的支持下实现各种方式的数据传送2、CPU与外设交换的信息:数字量、模拟量、开关量、脉冲量3、接口电路由于I/O设备如CRT,键盘等相对于CPU来说,速度慢很多,而且外设的信号、数据格式各异。为了把外设和CPU连接起来,必须使用接口部件,通常把接口部件做成独立并且通用的接口芯片。5、I/O端口的编址方式每个接口部件都包括一组寄存器(状态,控制,数据),CPU和外设进行数据传输时,各类信息在接口中存入不同的寄存器。称这些寄存器为I/O端口,每个端口都有一个端口地址。外设需要通过接口与CPU联络交流,而接口由众多端口组成那么如何找到一个端口,方法是为所有的的端口编一地址。可采用两种方式A、I/O端口地址与内存单元地址统一编址,称为存储器映射编址方式B、I/O端口独立编址,CPU用16根地址线来寻址,故可有65536个端口地址8.1 I/O传送控制方式1、程序控制的I/O方式(1)、无条件传送:传送前CPU不需要了解外设的状态,直接传送数据,即CPU认为外设始终处于就绪状态。适用于LED,开关等简单外设 A、输入时,设备数据送入缓冲器,当CPU需要,则RD有效,M/IO有效,地址总线提供端口地址,通过DB取走数据 B、输出时,IM/IO,WR有效,地址总线提供端口地址,选中端口,DB中数据传入锁存器,等外设取走(2)、条件传送方式:传送前,CPU先查询端口状态,等端口状态就绪后在传送数据,称为查询传送。A、输入时(1)、接口电路组织:8位锁存器和缓冲器构成输入寄存器,一边连接输入设备,一边连接数据总线1位D触发器和1位缓冲器构成状态寄存器,一边连接设备STB选通脚,一边连接数据总线,CPU通过DB的其中一位来读取其状态,从而确定其是否就绪(2)、设备准备好数据后,发一选通信号。该信号一方面选通锁存器,是数据锁存其中。一方面选通D触发器置1,从而使1位缓冲器READY置1,至此,外设数据状态均就绪(3)、 CPU选通8位缓冲器,驱动数据到DB,读出,另一方面选通D触发器置0,表示数据已经取走(4)、CPU选通D触发器,将其清零。接着便可开始下一个数据传输B、输出时CPU通过M/IO和WR选通数据锁存器,把数据通过DB存入锁存器;同时使D触发器输出1,这样一方面可以通知外设有数据需要取走,另一方面,通知状态寄存器置1,状态寄存器送信号到DB某1位,CPU读出,忙则等。闲则CPU选通数据锁存器,继续输出数据。外设取走数据,发ACK信号给D触发器置0,从而给状态寄存器清02、中断控制的I/O方式传送请求由外设提出,CPU视情况响应后,调用预先安排好的子程序来完成数据传送。传送过程(1)、设备准备好数据后,选通锁存器送入数据,同时选通D触发器,若此时中断允许触发器也有效,则发一信号到CPU的INTR脚,表示请求中断(2)、CPU执行玩一条指令后便去察看INTR脚,若有效且内部允许中断则发出中断响应信号INTA,该信号一方面清D触发器,表示中断已经响应。另外打开缓冲器,把有关的代码,即中断向量号送到DB(3)、CPU收到中断向量号后,据此找到为该设备服务的中断服务程序入口,去读去设备数据传送一个字节或字就要中断CPU一次3、DMA传送方式传送请求由外设向DMA控制器(DMAC)提出,后者向CPU申请总线,若CPU响应DMA的请求把总线使用权赋给DMA控制器,数据则不通过CPU,由DMAC利用系统总线来完成外设和存储器之间的数据传送数据传送完毕,DMAC向CPU发出结束中断请求,CPU收回总线。CPU只需中断一次即可完成数据的传送4、IO处理机方式:由IO处理器8089完成(1)、IO处理机概述:8089可以将8086CPU与外部设备连接起来相互通信。8089具有自己的指令系统,能执行程序。因此,除具有输出入功能外,还可对数据进行装配、拆卸等工作。从而减轻CPU的负担,提高系统的性能系统配置8089IO处理机后,8086必须工作在最大模式下。当CPU需要进行IO操作时,只需要在存储器中建立一个规定格式的信息块,设置号需要执行的操作和有关的参数。然后通知8089读这些信息,8089根据这些信息进行IO操作,将数据块以字或字节为单位完成IO功能。如果数据IO过程出现错误,8089还可以重传。在整个数据IO过程中,CPU不必干预,但可以和8089并行工作去执行其他功能B、8255的工作方式方式0:基本输出入方式。无固定IO联络信号,用户可自行安排联络信号。ABC三口均可作为输入或输出。只能用于各种同步并行传送系统方式1:字节选通输入出方式。接口和外设之间需要联络信号进行协调。AB均可工作于方式1。C的某些位固定为联络信号 选通输入方式:()外设将数据准备好送至8255的端口数据线时,外设将选通信号STB置低有效,通知8255。()8255利用STB信号把端口数据锁存到输入锁存器。然后置IBF为高有效,告诉外设数据已经读入,当前输入缓冲器已满。(3)在STB信号后沿输出INTR,向CPU发出中断请求(4)CPU响应,发出RD读信号,取走数据。并对IBF置0,然后外设可以继续输入数据。AB端口被定义为工作方式1且输入时,C的PC5PC0被用作控制信号,PC345为A口服务,PC012为B口服务。PC6、PC7可以完成输入输出工作。选通输出方式:中断方式时,外设发中断信号到CPU,CPU响应,输出数据,发出WR信号,WR一方面清除INTR,另一方面在使OBF有效,通知外设接收数据,WR结束后,数据从端口输出,外设接收后,发ACK响应,使OBF无效,使INTR有效,继续传送数据AB端口被定义为工作方式1且输出时,C的PC67和PC3PC0被用作控制信号,PC367为A口服务,PC012为B口服务。PC4、PC5可以完成输入输出工作。AB均可作用输入或输出用,无论哪种情况,PC0123总是作为控制用。A输入时PC45控制用,PC67输入输出用;A输出时,PC67做控制用,PC45输入输出。因此AB均输入、输出、A输入B输出、A输出B输入可组成8种方式。方式2:双向选通传送方式。即同一端口既可以发送数据,又可接收数据。只有A口可工作于此方式输入数据:外设将数据准备好送至8255的A口,外设将选通信号STB置低有效,通知8255。8255利用STB信号把端口数据锁存到输入锁存器。然后置IBF为高有效,告诉外设数据已经读入。并阻止信数据输入。在STB信号无效后,允许中断的条件下,INTR信号有效向CPU提出中断请求,CPU响应,发出RD读信号,取走数据输出数据:外设发中断信号INTR到CPU,CPU响应,输出数据,发出WR信号,WR一方面清除INTR,另一方面在使OBF有效,通知外设接收数据,WR结束后,数据从端口输出,外设接收后,发ACK响应,使OBF无效,使INTR有效,继续传送数据波特率概念波特率指单位时间内传送的信息量,即每秒传送的位数。1波特=1位每秒TxC的频率=N*字符传输波特率RxC:接收时钟,接收时钟的上升沿接受数据。8251发送数据:发送器做好接受数据准备,发送控制器向CPU发出TxRDYCPU把数据并行输入发送缓冲器,并锁存若为同步方式,则先发送一或两个同步字符(Sync),然后由移位器存器逐位串行输出数据到外设若为异步方式,则加上起始位和停止位,然后逐位串行输出发送器中的八位数据发送完毕,发送控制电路向CPU发出TxEMPTY信号。 第9章定时计数器定时计数器在微机系统中作用重大,如系统时钟计时,内存定时刷新等都需要精确定时计数器。8253就是一个定时计数器。2、8253内部结构(1)、数据总线缓冲器:与数据总线相连。有3个功能:A、CPU通过它写入方式控制字,再送到控制字寄存器,最后由控制字寄存器区控制计数器的工作B、CPU写入计数值C、CPU读出计数值(2)、读写逻辑:接收来自系统总线的输入信号。然后产生控制8253工作的控制信号。(3)、控制字计数器:接收CPU的方式控制字,去控制计数器工作。只能写入,不能读出(4)、通道:3个通道结构完全一样。包括一个预置寄存器,一个减法寄存器,一个输出锁存器。计数开始前,初始值写入预置寄存器,然后在写入减法寄存器,并开始递减,但是预置内数值不变,输出寄存器随减法改变。3、外部引脚与CPU相连:D0D7连数据总线;RD,WR,A0,A1,CS与外设相连:CLK:接外设提供的时钟脉冲GATE:门控电路外部输入,为低禁止计数器工作,反之允许OUT:定时计数器输出的信号4、8253的工作方式:共6种,由方式控制字决定A、方式0:计数结束中断方式设置方式0后,OUT变低,写入计数值后,CLK下降沿开始计数,OUT维持低。计数为0时,OUT变高。直到当再写入计数值或设置方式0后,OUT才会变低该方式输出OUT在计数是一直为低,只有到0才变高。用来计数,到计数结束时产生一个中断信号。写入数值N后,经过N+1个CLK脉冲输出变高计数过程中,如GATE变低则暂停计数,GATE变高后继续计数。另:该方式写入计数值便开始计数,属于软件启动,方式0,2,3,4均为此类。B、方式1:可编程的单稳脉冲设置方式1后,OUT变高。写入计数值后,不开始计数,OUT维持高。直到GATE为高后的下一个CLK下降沿开始计数,同时OUT变低,直到计数为0,OUT变高。GATE启动后,OUT持续为低,直到计数为0。即会产生一个宽度等于计数值乘时钟周期的负脉冲,即N个CLK周期计数过程中,GATE为低计数继续,到0OUT变高。GATE再变高则计数重新开始另:GATE启动才开始计数,此为硬件启动,1,5为此类C、方式2:分频脉冲发生器设置方式2后,OUT变高。写入计数值后,开始计数,OUT维持高。到计数为1时,OUT变低,一个CLK周期后,恢复为高,且计数重新开始计数为N,则每N个CLK周期,OUT一个CLK周期的负脉冲。只要GATE为高,则计数重复下去,OUT输出连续方波计数过程中,GATE变低,禁止计数,恢复高后,重新计数D、方式3:分频方波发生器设置方式3后,OUT为高。写入计数值后,开始计数,OUT维持高,计数完成一半时,OUT变低。计数为0时,OUT变高,同时计数重新开始。(计数值为奇数则为(N+1) /2和(N-1)/2)计数为N,则输出N/2或(N+1)/2个高电平, N/2或(N-1)/2个低电平E、方式4:软件触发选通脉冲发生器设置方式4后,OUT为高。写入计数值后,开始计数,OUTF、方式5:硬件触发选通脉冲发生器设置方式4后,OUT为高。写入计数值后,不开始计数,OUT维持高,GATE为高后计数开始,计数到0则OUT为低,维持一个CLK周期后就又变高,并维持,直到再次GATE变高在GATE控制下经过N+1个CLK,输出宽度为1个CLK周期的脉冲维持高,计数到0则OUT为低,维持一个CLK周期后就又变高,并维持,直到再次写入计数值写入N后经过N+1个CLK,输出宽度为1个CLK周期的脉冲总结:6种方式中,只有0是写入方式控制字后OUT为低,其余的写入后OUT均为高方式2、4、5输出的波形都是一个CLK的负脉冲,但2为连续的,4由软件触发,5由GATE触发方式0,2,3,4属于软件启动,即写入计数值便开始计数方式1、5为硬件启动,即GATE启动才开始计数5、8253的编程(1)、8253的初始化:8253的每个计数器的工作方式和计数值都必须由CPU通过指令的设定A、写入方式控制字:CPU用数据总线通过数据缓冲器写入8253的控制寄存器。具体见书346页B、写入计数值:CPU用数据总线通过数据缓冲器写入8253的某个计数器(2)、8253的读命令:书346页DAMC8237A数据传送方式除了查询方式和中断方式以外还有DMA控制方式。利用DMA方式传送数据时,数据的传送过程完全由硬件电路控制,这种电路称为DMA控制器(DMAC),它可以在DMA方式下起到CPU的作用。DMAC的功能就是在存储器和I/O设备之间进行高速、成批的数据传输。在8086系统中,DMAC选用的是可编程器件Inte
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中国庆课件
- 高中化学电池改造课件
- 高三下期家长会课件
- 高一化学反应与电能课件
- 离婚谈判实战技巧三大策略专业调解合同
- 电动公交充电桩场地租赁及维护保养合同
- 农业粮食仓库租赁合同范本(含仓储设施维护)
- 私人商铺租赁合同范本:包含商铺租赁税费承担条款
- 广告创意版权代理合同
- 骨骼健康养生知识培训总结
- 2025天津津南国有资本投资运营集团有限公司及实控子公司招聘工作人员招聘5人考试模拟试题及答案解析
- 营造清朗空间+课件-2025-2026学年(统编版2024)道德与法治八年级上册
- saas货运管理办法
- 2025年遴选财务岗考试题及答案
- excel操作考试题及答案
- 项目安全管理实施细则
- 2025新疆生产建设兵团草湖项目区公安局面向社会招聘警务辅助人员考试参考试题及答案解析
- 车间偷盗行为管理办法
- 管理学(第二版)邢以群PPT全套课件
- DBJ51T 196-2022 四川省智慧工地建设技术标准
- 新人教版小学五年级英语上册全册教案
评论
0/150
提交评论