- 1、本文档共61页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
二、8位数据端口与32位数据线的连接 例如: MOV DX,3E0H IN AL,DX ; BE0* 有效,只读端口0 IN AX,DX ; BE1* 、BE0*有效, ;读端口1与读端口0 IN EAX,DX ; BE3* ~ BE0*均有效, ;读端口3~端口0 6.3 CPU与I/O设备数据传送的几种方式 I/O接口电路的基本结构 一、I/O接口电路的连接 二、I/O接口电路中的基本寄存器 I/O接口电路中一般具有三种类型的基本寄存器,它们是用于存取数据的寄存器,存取命令信息的寄存器以及存取外设所处状态的寄存器,习惯上把这些寄存器称为端口 1、数据端口 2、命令端口 3、状态端口 1.数据端口 用于中转数据信息。一种情况是CPU通过数据总线,将待传送给外设的数据先传送到数据端口,然后由I/O设备通过与I/O接口电路相连接的数据线取得该数据 另一种情况是I/O设备首先将输入数据锁存于数据端口,然后,CPU通过数据端口将该数据读入CPU中。数据端口一般既有输出寄存器(或称输出锁存器),又有输入寄存器(或称输入锁存器) 2、命令端口 用于传送对I/O设备的命令信息。CPU将命令信息通过数据总线写入I/O接口电路的命令寄存器中,然后传送到I/O设备,以便控制外设的操作。它由输出寄存器组成,命令端口是一个输出端口 3、状态端口 用于传送外设所处的状态信息。状态端口是输入端口,CPU通过读取状态端口的数据,以此了解外设当前所处的工作状态,比如,如果是输入设备,则可以通过状态信息了解输入设备是否有了等待输入的新数据,如果是输出设备,CPU通过读入的状态信息,可以了解输出设备是否作好了接受CPU传送新数据的准备。显然,1bit的状态信息可以反应1个外设的两种状态,1个8位的状态端口则可以反应外设的8个状态信息 总之,I/O接口电路中一般有数据端口、命令端口以及状态端口,每个端口地址是不相同的,CPU均通过数据总线来传送三种端口的数据。有些I/O接口中,还有中断控制逻辑电路,以便外设与CPU之间以中断方式进行输入或输出,其优点是可以提高CPU的工作效率 6.3.2 CPU与I/O设备传输数据的几种方式 CPU以及I/O设备的种类繁多,CPU与I/O设备所构成的系统不可能完全相同,CPU与I/O设备之间传输数据的方式也不完全相同,接口电路的结构与功能也不同,驱动程序也不相同 一般可以划分为五种传输数据的方式:无条件I/O传送方式、查询式输入输出方式、中断控制方式、DMA方式以及I/O处理器控制方式 一、无条件输入输出方式 无条件输入输出方式是一种最简单的输入/输出控制方式,其I/O接口电路及软件比较简单,所有的操作均由执行程序来完成 特点:输入接口电路总是准备好了等待输入给CPU的数据,输出接口电路总是准备好了接受来自CPU的数据。CPU无须查询I/O设备是否准备就绪,直接用汇编语言或高级语言编程,实现输入或输出操作 此种方式的接口电路是查询式输入输出方式接口电路的基础 IOR*与IOW*的产生 无条件输入接口电路及输入时序 无条件输出接口电路及输出时序 二、查询式输入输出方式 1.查询式输入方式 当CPU采用查询方式从外设读取数据时,CPU必须首先从状态端口查询外设的数据是否已经准备好,确认已准备好后,才能执行一次数据输入操作 例:假设状态端口与数据端口的地址分别为300H和301H,状态信息从数据总线上的D0位读入CPU中,查询式输入程序段如下: MOV DX,300H ; 状态口地址传送给DX ABC:IN AL,DX ; 读入状态信息 TEST AL,01H ; AL∧01H,影响ZF标志 JZ ABC ; 如果状态信息为0转ABC MOV DX,301H; 数据端口地址传送给DX IN AL,DX ; 读入数据信息 ? 2.查询式输出方式 当CPU采用查询方式向外设输出数据时,CPU必须首先从状态端口查询外设是否已经作好了接受CPU数据的准备,若没有准备好,则要继续查询,若准备好了,CPU便执行一次数据输出操作 例:假设状态端口与数据端口的地址分别为3FOH和3F1H,状态信息从数据线上D7位读入CPU中,查询式输出程序段如下: MOV DX,3F0H ; 状态口地址传送给DX CBA:IN AL,DX ; 读入状态信息 TEST AL,80H ; AL∧80H,影响ZF标志 JZ CBA ; 如果状态
您可能关注的文档
最近下载
- 02 中国核工业华兴建设有限公司安全生产标准化达标创建工作总结汇报.pptx
- 2024首届全国红旗杯班组长大赛题库及答案(第8001-10000题).docx VIP
- 国家开放大学,期末考试参考资料纳税实务.docx
- 一种风电叶片前缘防护系统.pdf VIP
- 机械类外文文献翻译.docx
- 通用版2024年党纪学习教育ppt(党课).pptx VIP
- 我的第二个图书馆Usborne Young Reading Series One -- Puss in Boots.docx VIP
- 民航定额说明宣贯.pdf VIP
- 维谛 ITA30&40&NX30&40k 节能认证检测报告.pdf
- 妇科护理带教老师ppt.pptx
文档评论(0)