计算机组成第5章.ppt

  1. 1、本文档共88页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 指令字的长度,多数情况下就确定为计算机的字长,即由几个字节组成,例如2、4、6、8个字节,但并要求所有的指令的字长都相同,例如,一个机器字中,可以存放几条很短的指令,长的指令也可能占用多个机器字,目的在于提高资源利用率。 指令格式,通常情况下,一条指令要由如下两部分内容组成: 操作码 操作数地址 第一部分,是指令的操作码。操作码用于指明本条指令的操作功能,例如,是算术加运算、减运算还是逻辑与运算、或运算功能,是否是读、写内存或读、写外设操作功能,是否是程序转移和子程序调用或返回操作功能等,计算机需要为每条指令分配一个确定的操作码。 第二部分,是指令的操作数地址,用于给出被操作的信息(指令或数据)的地址,包括参加运算的一个或多个操作数所在的地址,运算结果的保存地址,程序的转移地址、被调用的子程序的入口地址等。 在一条指令中,如何安排指令字的长度,如何分配这两部分所占的位数(长度),如何安排操作数的个数,如何表示和使用一个操作数的地址(寻址方式),是要认真对待、精心设计的重要问题。 * 目前PC机所用的数据(机器字)长度一般为32位, 4个字节。内存地址按字节编址。 计算机指令系统可支持对字节、半字、字、双字的运算,有的还支持位操作。 为便于硬件的实现,一般要求多字节数据采用对准数据边界的方式储存。不合要求则填充空白字节(无操作)代替。 有的计算机不要求对准边界存储数据,如下图所示,但这种方式增加硬件的复杂程度,并且有可能导致访问次数增加。 * * * * * * * * * * * IR15、IR14 用于区分指令组:0X表示A组,10表示B组,11表示C、D组; 还要用IR11区分C、D组,IRH11=0为C组,IRH11=1为D组。 IR13 用于区分基本指令和扩展指令:基本指令该位为0,扩展指令该位为1; IR12 用于简化控制器实现,暂定该位的值为0; IR11~IR8 用于区分同一指令组中的不同指令。 * 表中CZVS一列,* 表示对应的状态位在该指令执行后会被重置;· 表示对应状态位在该指令执行后不会被修改。 运算器芯片中有16个通用寄存器(累加器)R0~R15,其中:R4 用作16位的堆栈指针SP; R5 用作16位的程序计数器PC;其余寄存器用作通用寄存器,即多数双操作数指令和单操作数指令中的DR、SR。 * A组指令完成的是通用寄存器之间的数据运算或传送,或其它几项特殊的操作,在取指之后可一步完成。 B组指令完成的是一次内存或I/O读、写操作,在取指之后可两步完成,第一步把要使用的地址传送到地址寄存器AR中,第二步执行内存或I/O读、写操作。 C组指令在取指之后可三步完成,其中CALR指令在用两步完成写内存之后,第三步执行寄存器之间的数据传送;而其它指令在第一步置地址寄存器AR,第二步读内存(即取地址操作数)并且计算内存地址并置地址寄存器AR,第三步读、写内存。 D组指令完成的是两次读、写内存操作,在取指之后可四步完成。 TEC-2000十六位的教学机系统,实现了上面4组中的29条基本指令,用于支持教学机的监控程序和简单的汇编语言程序设计。保留了其余19条扩展指令,供学生在教学实验中进行扩展,即完成对这些指令的设计与调试,当然,还可以扩展另外一些指令。 * * * * * (3) TEC-2008 教学计算机指令系统 设计目标 满足教学要求,机器字长16位,有单字和双字指令 完备性 支持监控程序和简单汇编语言程序设计 可以设计出 BASIC 的解释程序 支持常见的寻址方式,分为基本指令和扩展指令两类 高效性 小指令集,实现简单、成本低 规整性 指令长度基本固定,指令格式比较规整,字寻址方式 兼容性 后来的其它型号的教学都沿用了这套指令系统 * 有单字和双字指令 单字指令分为三个主要部分: 最高 8 位是操作码,是固定长度的操作码, 最多支持 256 条指令。 最低 8 位有多种用法:给出 1 或 2 个寄存器的编号, 或 输入/输出的端口地址, 或 相对转移指令的 8 位的偏移量。 双字指令的第二个字的内容可能是:立即数、直接地址、变址偏移量。 操 作 码 目的寄存器 源寄存器 I/O 端 口 地 址 相对转移指令的偏移量 立即数 / 直接地址 / 变址偏移量 8位 4位

文档评论(0)

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

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

1亿VIP精品文档

相关文档