微机原理输入和输出.pptx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《微机原理输入和输出.pptx》由会员分享,可在线阅读,更多相关《微机原理输入和输出.pptx(52页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、这种方式的优点是:(1)CPU对外设的操作可使用全部的存储器操作指令,故指令多,使用方便。例如可以对外设中的数据(存于外设的寄存器中)进行算术和逻辑运算,进行循环或移位等。(2)内存和外设的地址分布图是同一个。(3)不需要专门的输入输出指令以及区分是存储器还是I/O操作的控制信号。缺点是:外设占用了内存单元,使内存容量减小。第1页/共52页2端口寻址的输入输出方式在这种工作方式中:CPU有专门的I/O指令,用地址来区分不同的外设。但要注意实际上是以端口(Port)作为地址的单元,因为一个外设不仅有数据寄存器还有状态寄存器和控制命令寄存器,它们各需要一个端口才能加以区分,故一个外设往往需要数个端
2、口地址。CPU用地址来选择外设。要寻址的外设的端口地址,显然比内存单元的地址要少得多。所以,在用直接寻址方式寻址外设时,它的地址字节,通常总要比寻址内存单元的地址少一个字节,因而节省了指令的存储空间,缩短了指令的执行时间。第2页/共52页7.1.2 CPU与I/O设备之间的接口信息1数据(Data)在微型机中,数据通常为8位、16位或32位。它大致可以分为三种基本类型:(1)数字量(2)模拟量(3)开关量2状态信息(Status)在输入时,有输入设备是否准备好(Ready)的状态信息;在输出时,有输出设备是否有空(Empty)的状态信息,若输出设备正在输出,则以忙(Busy)指示等等。第3页/
3、共52页3控制信息(Control)控制输入输出设备启动或停止等等。状态信息和控制信息与数据是不同性质的信息,必须要分别传送。但在大部分微型机中(8086也如此),只有通用的IN和OUT指令,因此,外设的状态也必须作为一种数据输入;而CPU的控制命令也必须作为一种数据输出。所以,一个外设往往要几个端口地址,CPU寻址的是端口,而不是笼统的外设。第4页/共52页7.1.3 CPU的输入输出时序通常I/O接口电路的工作速度较慢,往往要插入等待状态。7.1.4 CPU与接口电路间数据传送的形式CPU与外设的信息交换称为通信(Communication)。基本的通信方式有两种:并行通信数据的各位同时传
4、送;串行通信数据一位一位顺序传送。第5页/共52页第6页/共52页7.2 CPU与外设数据传送的方式7.2.1 查询传送方式CPU与I/O设备的工作往往是异步的,很难保证当CPU执行输入操作时,外设已把要输入的信息准备好了;而当CPU执行输出时,外设的寄存器(用于存放CPU输出数据的寄存器)一定是空的。所以,通常程序控制的传送方式在传送之前,必须要查询一下外设的状态,当外设准备就绪了才传送;若未准备好,则CPU等待。第7页/共52页1查询式输入在输入时,CPU必须了解外设的状态,看外设是否准备好。查询式输入程序流程图第8页/共52页查询式输入接口电路第9页/共52页查询部分的程序如下:POLL
5、:INAL,STATUS_PORT;从状态端口输入状态信息TEST AL,80H;检查READY是否为1JEPOLL;未READY,循环INAL,DATA_PORT;READY,从数据端口输入数据第10页/共52页2查询式输出同样的,在输出时CPU也必须了解外设的状态,看外设是否有空(即外设不是正处在输出状态,或外设的数据寄存器是空的,可以接收CPU输出的信息),若有空,则CPU执行输出指令,否则就等待。第11页/共52页查询式输出接口电路第12页/共52页查询式输出程序流程图第13页/共52页查询部分的程序为:POLL:INAL,STATUS_PORT;从状态端口输入状态信息TESTAL,8
6、0H;检查BUSY位JNEPOLL;BUSY则循环等待MOVAL,STORE;否则,从缓冲区取数据OUTDATA_PORT,AL;从数据端口输出其中,STATUS_PORT是状态端口的符号地址;DATA_PORT是数据端口的符号地址;STORE是存放数据单元的地址偏移量。第14页/共52页 一个采用查询方式的数据采集系统 一个有8个模拟量输入的数据采集系统,用查询的方式与CPU传送信息,其电路如图所示。查询方式的数据采集系统 第15页/共52页实现这样的数据采集过程的程序为:START:MOV DL,0F8H;设置启动A/D转换的信号LEA DI,DSTOR;存放输入数据缓冲区的地址偏移量DI
7、AGAIN:MOV AL,DL AND AL,0EFH;使D4=0 OUT 4,AL;停止A/D转换 CALL DELAY;等待停止A/D操作的完成 MOV AL,DL OUT4,AL;启动A/D,且选择模拟量A0POLL:IN AL,2;输入状态信息SHR AL,1JNC POLL ;若未READY,程序循环等待IN AL,3 ;否则,输入数据STOSB ;存至内存INC DL ;修改多路开关控制信号,指向下一个模拟量JNE AGAIN ;8个模拟量未输入完,循环已完,执行别的程序段 第16页/共52页7.2.2 中断传送方式在上述的查询传送方式中,CPU要不断地询问外设,当外设没有准备好时
8、,CPU要等待,不能进行别的操作,这样就浪费了CPU的时间。而且许多外设的速度是较低的,在等待过程中,CPU本可以执行大量的指令。为了提高CPU的效率,可采用中断的传送方式:在输入、输出时,若外设已准备好,则由外设向CPU 发出中断请求,CPU就暂停原执行的程序(即实现中断),转去执行输入或输出操作(中断服务),待输入输出操作完成后即返回,CPU再继续执行原来的程序。这样就可以大大提高CPU的效率,而且允许CPU与外设(甚至多个外设)同时工作。第17页/共52页中断传送方式接口电路 第18页/共52页7.2.3 直接数据通道传送(DMA)中断传送仍是由CPU通过程序来传送,每次要保护断点,保护
9、现场需用多条指令,每条指令要有取指和执行时间。这对于一个高速I/O设备,以及成组交换数据的情况,例如磁盘与内存间的信息交换,就显得速度太慢了。第19页/共52页所以希望用硬件在外设与内存间直接进行数据交换(DMA),而不通过CPU,这样数据传送的速度的上限就取决于存储器的工作速度。但是,通常系统的地址和数据总线以及一些控制信号线是由CPU管理的。在DMA方式时,就希望CPU把这些总线让出来(即CPU连到这些总线上的线处于第三态高阻状态),而由DMA控制器接管,控制传送的字节数,判断DMA是否结束,以及发出DMA结束等信号。这些都是由硬件实现的。第20页/共52页DMA工作流程图 第21页/共5
![微机原理输入和输出.pptx_第1页](https://file3.taowenge.com/fileroot3/2022-7/25/86561318-485d-43a6-8a21-afd1a4365d2f/86561318-485d-43a6-8a21-afd1a4365d2f1.gif)
![微机原理输入和输出.pptx_第2页](https://file3.taowenge.com/fileroot3/2022-7/25/86561318-485d-43a6-8a21-afd1a4365d2f/86561318-485d-43a6-8a21-afd1a4365d2f2.gif)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 输入 输出
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内