网站大量收购闲置独家精品文档,联系QQ:2885784924

DJ5 指令类型.ppt

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DJ5 指令类型

* * 2.3 指令类型 2.3.1 传送指令 源地址 目的地址 数据 传送指令的指令特点: 功能 1. 规定传送范围 用户编程能够指定的源端和目的端: 寄存器 (R) 存储器(M) R R R M M M 范围、单位、寻址方式 例. Intel 80X86: R M, R R IBM370: R M, R R, M M R M DJS-100系列: 传送范围的指定涉及多方面因素: 复杂性、速度、价格等 R M R R 尽可能让数据在R之间传送,速度快, 复杂性增加 M M 速度慢, 利于编程 介于前两者之间 例. 80X86的串传送指令: REP MOVSW MOV AX, BX (16位) MOV AL, BL (8位) MOV EAX, EBX (32位) (字传送, [SI] [DI], 传送次数由计数器CX控制) 2. 指明传送单位 例. VAX-11(用操作码说明): MOVB 8位 MOVL 32位 MOVW 16位 Intel 80X86: (用地址量说明) 3. 设置寻址方式 ? 不同机器各不相同, 但一般都具有基本的寻址方式 ? 寻址方式越多, 编程越方便,但机器的实现越复杂 针对数据传送指令设置的寻址方式: 2.3.2 输入/输出指令 1. I/O指令的功能扩展 如何用通用I/O指令实现对各种不同设备的控制? (1) I/O指令中留有扩展余地 指令中某些字段编码事先不定义, 需要时再约定其含义。 各种信息 主机 外设 比如: 设置I/O指令时需考虑: 操作码 操作数1 操作数2 三位空闲, 接口设计时定义 译码器 三位编码, 定义8种功能 应用范围: 用于外设种类、数量不多的场合。 (2) I/O接口中设置控制/状态寄存器 ? 主机用输出指令或传送指令将具体设备的控 制命令按约定的代码格式送往接口中的控制寄存器, 向外设发出命令。 ? 外设的状态信息也以某种格式放在接口的状态寄存器中, 主机用输入指令或传送指令从状态寄存器中取出有关信息进行查询、分析。 如何设置控制/状态寄存器是接口设计的关键。 例: 处理器 I/O 设备 总线 可编程接口芯片 控制寄存器 状态寄存器 控制寄存器 ..... C7 C6 C5 ......C0 状态寄存器 ..... D7 D6 D5 ......D0 OUT n1, AL IN AL, n2 2. 主机对外设的寻址方式 I/O端口 寻找外设或I/O接口中的寄存器的方式。 如何为I/O端口分配地址? I/O设备 I/O接口逻辑 寄存器 译码 器 端口地址 数据 端口地址与存储器地址的关系? (1) 单独编址 ? 编址到设备: ? 编址到寄存器(端口独立编址) : ? 端口地址的位数一般远少于存储单元地址的位数 ? I/O地址空间不占主存空间 ? 因此I/O地址可与内存地址重叠 每个设备有各自的设备编码; I/O指令给出设备码, 并指明访问该设备的哪个寄存器。 为每个寄存器(I/O端口)分配独立的端口地 址, I/O指令中给出端口地址。 单独编址的特点: 例: 端口独立编址 (地址重叠) 存储空间: 容量64K, 编址0000H ~ FFFFH 端口编址: 00H ~ FFH (假设都已分配给不同端口) 处理器 地址总线 外设端口 寄存器 存储器 数据总线 RD ? 读存储单元FF30H, 处理器输出地址 ,存储器从16位地址总线上接收FF30H, 并接收读命令 RD ? 由于采用总线结构, 外设端口也将从地址总线的低8位收到处理器发出地址的低8位(30H), 并收到读命令 。 RD ? 如果不加控制, 存储单元FF30H和地址为30H的端口的数据被同时读出到数据总线, 导致会乱。 处理器 地址总线 外设端口 寄存器 存储器 数据总线 RD 关键原因: 地址码本身不能区分存储单元或端口。 (2) 统一编址 I/O端口占据部分处理器提供的全部寻址空间的一部分。可将存储空间的低端分配给主存单元, 高端分配给I/O端口, 以示区分。 ? 编址到寄存器: 为每个寄存器(I/O端口)分配总线地址;访问外设时, 指令中给出总线地址。 (即 与存储器单元统一编址) 因此, 地址本身能够区

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档