第3章-IO地址译码.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章 基本的I/O接口 ----I/O地址译码 内容提要 微机接口技术概述 CPU与接口交换数据的方式 I/O端口地址译码技术 3.1.2 I/O端口及其地址 一、I/O端口 I/O端口:是接口电路中能被CPU直接访问的寄存器。 端口的种类:一个接口可以有几个I/O端口。 如命令口、状态口和数据口,分别对应于命令寄存器、状态寄存器和数据寄存器。 I/O端口地址:对接口中不同寄存器的编号。CPU通过端口地址向接口电路中的寄存器发送命令,读取状态和传送数据。 3.1.3 端口的编址方式 1、独立编址(I/O映象方式) 接口中的端口地址单独编址, 而不与存储空间合一起。 主要优点: (1) I/O端口地址不占用存储器空间; (2) I/O指令短,执行速度快; (3) I/O操作和存储器操作层次清晰,程序的可读性强。 缺点: I/O指令种类有限, I/O空间不易扩展 2、统一编址(存储器映象方式) 从存储器空间划出一部分地址空间 给I/O设备,把I/O接口中的端口当作 存储器单元一样进行访问。 优点: (1)I/O 可有较大编址空间,易扩展; (2)不设置专门的I/O指令,指令类型多,功能齐全。 缺点: (1)占用了存储器的地址空间,使存储器容量减小。 (2)另外指令长度比专门I/O指令要长,因而执行速度较慢。 3、Intel系列微机I/O编址 3.1.4 独立编址方式的I/O端口访问 1、I/O端口地址空间 I/O端口地址空间:64K(216)个独立编址的8位端口空间。2个连续8位端口可作为16 位端口,4个连续8位端口可作为32 位端口处理。 I/O端口地址信号:借用RAM地址线信号,和 IOW# / IOR#信号线,以及表示DMA正在工作的AEN#的反相信号组成。 2、I/O端口地址寻址方法 I/O端口支持直接寻址和间接寻址方式。 直接寻址:使用一字节立即数寻址,端口寻址范围 00H~FFH 共256个。 间接寻址:使用DX寄存器间接给出I/O端口地址,可寻址的范围是 0000H~FFFFH 共64K个。 3.1.5 I/O指令 CPU通过I/O指令对I/O接口进行访问。 1、汇编语言指令 访问I/O地址空间的I/O指令有两类: 累加器I/O指令 串I/O指令 累加器I/O指令IN和OUT 结果:完成I/O端口和EAX(32b)、AX(16b)、AL(8b)之间的数据传送。可使用直接寻址(单字节地址指令)和间接寻址(双字节地址指令)方式。 单字节地址指令 其指令格式为: IN AL, PORT ;输入 OUT PORT, AL ;输出 PORT: 是一个8位的字节地址,范围:00H~FFH, 最多可访问256个端口。 例如: IN AL, 60H ;从端口60H读数据到AL MOV [DI], AL ; 将数据从AL - 存储器 MOV AL, [SI] ; 从内存取数据到AL OUT 61H, AL ;数据从AL到端口61H 双字节地址指令 MOV DX, PORT IN AL, DX ;8位传送 MOV DX, PORT OUT DX,AL ;8位传送 PORT:为16位的两字节地址。范围:0000H~FFFFH,则最多可寻址216=64K个端口。 端口间址寄存器:DX 例如: MOV DX, 300H ; 300H为扩展板8255A的PA端口 IN AL, DX ; 从端口300H读数据到AL MOV [DI], AL ; 将数据从AL - 存储器 串I/O指令INS和OUTS 完成I/O端口和存储器之间传送一串(一块)信息,而不经过累加器。有三种不同的形式:INSB、INSW 、INSD和OUTSB、 OUTSW、 OUTSD,表示输入/出字节串、字串和双字串。只能使用间接寻址方式,用DX寄存器指定I/O端口地址。 INS指令:用ES:DI(或ES:EDI)指定目的存储器地址。 OUTS指令:用DS:SI(或DS:ESI)指定源存储器地址。 INSB / INSW /

文档评论(0)

ww90055 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档