- 1、本文档共72页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机组成原理-第四章--指令系统解读
指令格式设计 解:(1)完成105种操作,操作码取7位,因允许直接,间接寻址,且有基址寄存器和变址寄存器.寻址特征位M 2位 形式地址AD16-7-2=7位 OP(7) M(2) AD(7) 直接寻址128,一次间接寻址216=65536 容量是16MB存储器正好与存储字长是16位的8M存储器容量相等,采用双字长指令,操作码和寻址特征位不变 OP(7) M(2) AD1(7) AD2(16) 形式地址23位 223=8M * 指令格式设计 例6某模型机共有64种操作,操作码位数固定,具有以下特点: (1)采用1地址或者2地址格式 (2)有寄存器寻址,直接寻址,相对寻址(相对位移-128~~+127)三种寻址方式 (3)有16个通用寄存器,算术运算和逻辑运算的操作数都在寄存器中,结果也在寄存器中 (4)取数,存数指令在通用寄存器和存储器之间传送数据 (5)存储器容量是1MB,按字节编址。 要求设计算术逻辑指令,取数,存数指令和相对转移指令 * 指令格式设计 (1)算术逻辑指令为寄存器-寄存器型,单字长 OP (6) M(2) Ri(4) Rj(4) (2)取数存数指令是寄存器-存储器型,双字长 OP(6) M(2) Ri(4) A1(4) A2(16) A1和A共20位,可直接访问按存储器编址的1MB存储器 (3)相对转移指令是一地址 单字长 OP(6) M(2) A(8) A是位移量 * * 4.4.2 操作数基本寻址方式 例4.4:将ARM汇编语言翻译成机器语言。已知5条ARM指令格式译码如下表所示: 设r3寄存器中保存数组A的基值,h放在寄存器r2中。C语言程序语句 A[30]=h+A[30] 可编译成如下3条汇编语句指令: LDR r5 , [r3, #120] ;寄存器r5中获得A[30] ADD r5 , r2 , r5 , ;寄存器r5中获得h+A[30] STR r5 , [r3, #120] ;将h+A[30]存入到A[30] 请问这3条汇编语言指令的机器语言是什么? * * 4.4.2 操作数基本寻址方式 解:首先利用十进制数来表示机器语言指令,然后转换成二进制机器指令。从表4.3中我们可以确定3条机器语言指令: LDR指令在第3字段(opcond)用操作码24确定。基值寄存器3指定在第4字段(Rn),目的寄存器5指定在第6字段(Rd),选择A[30](120=30×4)的offset字段放在最后一个字段(offset12)。 ADD指令在第4字段(opcode)用操作码4确定。3个寄存器操作(2、5和5)分别被指定在第6、7、8字段。 STR指令在第3字段用操作码25确定,其余部分与LDR指令相同。 * * 4.4.3 寻址方式举例 Pentium的寻址方式 CAI * * 4.4.3 寻址方式举例 方式 算法 立即 作数=A 寄存器 LA=R 偏移量 LA=(SR)+A 基址 ?LA=(SR)+(B) 基址带偏移量 LA=(SR)+(B)+A 比例变址带偏移量 LA=(SR)+(I)×S+A 基址带变址和偏移量 LA=(SR)+(B)+(I)+A 基址带比例变址和偏移量 LA=(SR)+(B)+(I)×S+A 相对 LA=(PC)+A Pentium的寻址方式 * * 4.4.3 寻址方式举例 [例4] 一种二地址RS型指令的结构如下:6位 4位 1位 2位 16位 OP 通用寄存器 I X 偏移量D 其中I为间接寻址标志位,X为寻址模式字段,D为偏移量字段。通过I,X,D的组合,可构成如下寻址方式: 请写出6种寻址方式的名称。 * * 4.4.3 寻址方式举例 [例5] 将ARM汇编语言翻译成机器语言。已知5条ARM指令格式译码如下表所示: 设r3寄存器中保存数组A的基址,h放在寄存器r2中。C语言程序语句A[30]=h+A[30] 可编译成如下3条汇编语言指令: LDR r5,[r3,#120] ;寄存器r5中获得A[30] ADD r5,r2,r5 ;寄存器r5中获得h+A[30] STR r5,[r3,#120] ;将h+A[30]存入到A[30] 请问这3条汇编语言指令的机器语言是什么? * * 4.5 典型指令 4.5.1 指令的分类4.5.2 基本指令系统的操作4.5.3 精简指令系统 * * 4.5.1 指令的分类 数据传送
您可能关注的文档
- 葡萄栽培文档.ppt
- 葡萄栽培管理与病虫草害技术培训教材课件.ppt
- 葡萄植保与施肥文档.ppt
- 葡萄种植管理应用.ppt
- 董秀生--众筹实务案例分析详解.ppt
- 蒂芊廷网络营销项目计划书解读.ppt
- 蓖麻及其栽培技术课件.ppt
- 蔚县剪纸管理.ppt
- 蔬菜生长发育特性应用.ppt
- 蔬菜种类与分类教案.ppt
- 2-红河州建筑施工安全生产标准化工地复核评分表(2022年修改版).docx
- 6.锡通项目2018年下半年工作会汇报材料(2018.7.9).docx
- 2018道路工程知识点汇总(新版).docx
- 附件3:月度生产例会安全汇报资料-站台门项目部.docx
- 附件2:广东建工集团2018年度科技成果汇总表.DOC
- 马武停车区、三汇停车区停车位管理系统,0#台账缺量.doc
- 攀成钢委办发〔2015〕19号(党风廉政建设责任考核与追究办法).doc
- 1-红河州建筑工程质量管理标准化复核评分表(2022年修改版).docx
- 中交第三公路工程局第四工程分公司项目经济合同结算管理办法(修订).doc
- 厂站安全操作规程汇编.doc
文档评论(0)