版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上第3章习题解答 1指令长度和机器字长有什么关系?半字长指令、单字长指令、双字长指令分别表示什么意思? 解:指令长度与机器字长没有固定的关系,指令长度可以等于机器字长,也可以大于或小于机器字长。通常,把指令长度等于机器字长的指令称为单字长指令;指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。 2零地址指令的操作数来自哪里?一地址指令中,另一个操作数的地址通常可采用什么寻址方式获得?各举一例说明。 解:双操作数的零地址指令的操作数来自堆栈的栈顶和次栈顶。双操作数的一地址指令的另一个操作数通常可采用隐含寻址方式获得,即将另一操作数
2、预先存放在累加器中。例如,前述零地址和一地址的加法指令。 3某机为定长指令字结构,指令长度16位;每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。若双操作数指令已有K种,无操作数指令已有L种,问单操作数指令最多可能有多少种?上述三类指令各自允许的最大指令条数是多少? 解:X= (24一K)26一L/26 双操作数指令的最大指令数:24一1。 单操作数指令的最大指令数:1526一l(假设双操作数指令仅1条,为无操作数指令留出1个扩展窗口)。 无操作数指令的最大指令数:216一212一26。其中212为表示某条二地址指令占用的编码数,26为表示某条单地址指令占用的编码数。此时双
3、操作数和单操作数指令各仅有1条。 4设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配方案,使该指令系统包含:4条三地址指令,8条二地址指令,180条单地址指令。 解:4条三地址指令000 XXX YYY ZZZ 011 XXX YYY ZZZ 8条二地址指令 100 000 XXX YYY 100 111 XXX YYY 180条单地址指令 101 000 000 XXX 111 110 011 XXX 5指令格式同上题,能否构成: 三地址指令4条,单地址指令255条,零地址指令64条?为什么? 解:三地址指令4条 000 XXX YYY ZZZ 011 XXX YYY
4、 ZZZ 单地址指令255条 100 000 000 XXX 111 111 110 YYY 只能再扩展出零地址指令8条,所以不能构成这样的指令系统。 6指令中地址码的位数与直接访问的主存容量和最小寻址单位有什么关系? 解:主存容量越大,所需的地址码位数就越长。对于相同容量来说,最小寻址单位越小,地址码的位数就越长。 7试比较间接寻址和寄存器间址。 解:间接寻址方式的有效地址在主存中,操作数也在主存中;寄存器间址方式的有效地址在寄存器中,操作数在主存中。所以间接寻址比较慢。 8试比较基址寻址和变址寻址。 解:基址寻址和变址寻址在形成有效地址时所用的算法是相同的,但是它们两者实际上是有区别的。一
5、般来说,变址寻址中变址寄存器提供修改量(可变的),而指令中提供基准值(固定的);基址寻址中基址寄存器提供基准值(固定的),而指令中提供位移量(可变的)。这两种寻址方式应用的场合也不同,变址寻址是面向用户的,用于访问字符串、向量和数组等成批数据;而基址寻址面向系统,主要用于逻辑地址和物理地址的变换,用以解决程序在主存中的再定位和扩大寻址空间等问题。在某些大型机中,基址寄存器只能由特权指令来管理,用户指令无权操作和修改。 9某机字长为16位,主存容量为64K字,采用单字长单地址指令,共有50条指令。若有直接寻址、间接寻址:变址寻址、相对寻址四种寻址方式,试设计其指令格式。 解:操作码6位,寻址方式
6、2位,地址码8位。 10某机字长为16位,主存容量为64K字,指令格式为单字长单地址,共有64条指 令。试说明: (1)若只采用直接寻址方式,指令能访问多少主存单元? (2)为扩充指令的寻址范围,可采用直接间接寻址方式,若只增加一位直接间接标 志,指令可寻址范围为多少?指令直接寻址的范围为多少? (3)采用页面寻址方式,若只增加一位zc(零页现行页)标志,指令寻址范围为多 少?指令直接寻址范围为多少? (4)采用(2)、(3)两种方式结合,指令的寻址范围为多少?指令直接寻址范围为多少? 解:因为计算机中共有64条指令,所以操作码占6位,其余部分为地址码或标志位。 (1)若只采用直接寻址方式,地
7、址码部分为10位,指令能访问的主存单元数为210=1K字。 (2)若采用直接间接寻址方式,将增加了一位直接间接标志,地址码部分为9位, 指令直接寻址的范围为29=05K字,指令可寻址范围为整个主存空间216=64K字。 (3)若采用页面寻址方式,将增加一位zc(零页现行页)标志,所以指令直接寻址 范围仍为29=05K字,指令寻址范围仍为216=64K字。 (4)此时将需要和zc两个标志位,所以指令直接寻址范围为28=025K字,指令寻址范围仍为216=64K字。 11设某机字长32位,CPU有32个32位的通用寄存器,设计一个能容纳的单字长指令系统。 (1)如果是存储器间接寻址方式的寄存器一存
8、储器型指令,能直接寻址的空间是多少? (2)如果采用通用寄存器作为基址寄存器,能直接寻址的最大主存空间又是多少? 解:因为计算机中共有64条指令,所以操作码占6位;32个通用寄存器,寄存器编号占5位;其余部分为地址码或标志位。 (1)如果是存储器间接寻址方式的寄存器一存储器型指令,操作码6位,寄存器编号5位,间址标志1位,地址码20位,直接寻址的最大主存空间是220字。 (2)如果采用通用寄存器作为基址寄存器,EA=(Rb)+A,能直接寻址的最大主存空间是232字。 12已知某小型机字长为16位,其双操作数指令的格式如下: 其中:OP为操作码,R为通用寄存器地址。试说明下列各种情况下能访问的最
9、大主存区域有多少机器字? (1)A为立即数。 (2)A为直接主存单元地址。 (3)A为间接地址(非多重间址) (4)A为变址寻址的形式地址,假定变址寄存器为R1(字长为16位)。 解: (1)1个机器字。 (2)256个机器字。 (3)65536个机器字。 (4)65536个机器字。 13计算下列4条指令的有效地址(指令长度为16位)。 (1)Q (2)l00000Q (3)Q (4)Q 假定:上述4条指令均用八进制书写,指令的最左边是一位间址指示位(=O,直接寻址;=1,间接寻址),且具有多重间访功能;指令的最右边两位为形式地址;主存容量215单元,下表为有关主存单元的内容(八进制)。解:(
10、1)Q 因为指令的最高位为0,故为直接寻址,EA=A=00000Q。 (2)Q 因为指令的最高位为1,故指令为间接寻址。 (00000)=,最高位仍为1,继续间接寻址,(00002)=,其最高位为0,表示已经找到有效地址,EA=54304Q。 (3)Q因为指令的最高位为1,故指令为间接寻址。(00010)=,最高位仍为1,继续间接寻址。(00005)=,最高位仍为1,继续间接寻址。(00001)=,其最高位为0,表示已找到有效地址,EA=46710Q。(4)Q因为指令的最高位为0,故为直接寻址,EA=A=00005Q。14假定某机的指令格式如下:其中: Bitll=1:间接寻址; Bit8=1
11、:变址寄存器I1寻址; Bit7=1:变址寄存器I2寻址; Bit6(零页现行页寻址):ZC=0,表示O页面;ZC=1,表示现行页面,即指令所在页面。 若主存容量为212个存储单元,分为26个页面,每个页面有26个字。 设有关寄存器的内容为 (PC)=0340Q (11)=11llQ (12)=0256Q 试计算下列指令的有效地址。 (1)1046Q (2)2433Q (3)32150 (4)1111Q解:(1)1046Q=001 000 100 110因为4个标志位均为0,故为直接寻址,EA=A=0046Q。(2)2433Q一010 100 011 011因为Bit8(I1)=1,故为变址寄
12、存器1寻址,EA=(I1)+A=1111+33=1144Q。(3)3215Q=011 010 001 101因为Bit7(I2)=1,故为变址寄存器2寻址,EA=(I2)+A=0256+15=0273Q。(4)111lQ一001 001 001 001因为Bit6(zC)=1,故为当前页寻址,EA=(PC)HA=0311=0311Q。15假定指令格式如下: , 其中:DI为直接间接寻址标志,DI=0表示直接寻址,DI=1表示间接寻址。其余标志位同题14说明。 若主存容量为216个存储单元,分为28个页面,每个页面有28个字。设有关寄存器的内容为 (I1)=Q (I2)=Q (PC)=Q 试计算
13、下列指令的有效地址。 (1)Q (2)Q (3)Q (4)Q 解:(1) Q =1 101 010 011 000 001因为Bit10(I2)=1,故为变址寄存器2寻址,EA=(I2)+A=+301=Q。(2) Q=0 111 100 000 001 011因为Bit11(I1)=1,故为变址寄存器1寻址,EA=(I1)+A=+013=Q。(3) Q=1 110 001 001 010 011因为Bit9(zC)=1,故为当前页寻址,EA=(PC)A=Q。 (4)Q=1 100 000 000 001 001 因为4个标志位均为O,故为直接寻址,EA=A=Q。16举例说明哪几种寻址方式除去取
14、指令以外不访问存储器?哪几种寻址方式除去取指令外只需访问一次存储器??完成什么样的指令,包括取指令在内共访问4次存储器?解:除去取指令外不访问存储器:立即寻址,寄存器寻址。除去取指令外只需访问一次存储器:直接寻址,寄存器间接寻址,变址寻址,基址寻址,相对寻址,页面寻址。 二级间接寻址包括取指令在内共访问4次存储器。 17设相对寻址的转移指令占两个字节,第一个字节是操作码,第二个字节是相对位移量,用补码表示,假设当前转移指令第一字节所在的地址为2000H,且CPU每取一个字节便自动完成(PC)+1一PC的操作。试问当执行JMP*+8和JMP*一9指令(*为相对寻址特征)时,转移指令第二字节的内容
15、各为多少?转移的目的地址各是什么? 解:转移指令第二字节的内容分别为:(+8),(一9)转移的目的地址分别为:200AH,1FF9H。 18什么叫主程序和子程序?调用子程序时还可采用哪几种方法保存返回地址?画图说明调用子程序的过程。 解:主程序就是指通常的程序,而子程序是一组可以公用的指令序列,只要知道子程序的入口地址就能调用它。 保存返回地址的方法有多种: (1)用子程序的第一个字单元存放返回地址。转子指令把返回地址存放在子程序的第一个字单元中,子程序从第二个字单元开始执行。返回时将第一个字单元地址作为间接地址,采用间址方式返回主程序。 (2)用寄存器存放返回地址。转子指令先把返回地址放到某
16、一个寄存器中,再由子程序将寄存器中的内容转移到另一个安全的地方。 (3)用堆栈保存返回地址。 调用子程序的过程如下图所示,此时返回地址保存在堆栈中。 19在某些计算机中,调用子程序的方法是这样实现的:转子指令将返回地址存入子程序的第一个字单元,然后从第二个字单元开始执行子程序,请回答下列问题:(1)为这种方法设计一条从子程序转到主程序的返回指令。(2)在这种情况下,怎么在主、子程序间进行参数的传递?(3)上述方法是否可用于子程序的嵌套?(4)上述方法是否可用于子程序的递归(即某个子程序自己调用自己)?(5)如果改用堆栈方法,是否可实现(4)所提出的问题? 解:(1)返回指令通常为零地址指令。返回地址保存在堆栈中,执行返回指令时自动从堆栈中弹出。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学五年级混合运算练习题
- 小学四年级数学乘除法竖式计算题
- 小学数学二年级100以内连加连减口算题
- 高考语文模拟试题(二十)
- 2025年中考语文文言文总复习-学生版-专题01:文言文阅读之理解实词含义(讲义)
- 北京市丰台区2022-2023学年高三上学期期末练习英语学科试卷
- 房屋装修行业顾问工作总结
- 制药业行政后勤工作总结
- 《公司团队培训游戏》课件
- 演出票务公司营业员服务总结
- 【长安的荔枝中李善德的人物形象分析7800字(论文)】
- CJT 288-2017 预制双层不锈钢烟道及烟囱
- 生物安全风险评估报告
- 戈19商务方案第十九届玄奘之路戈壁挑战赛商务合作方案
- 广西河池市宜州区2023-2024学年七年级上学期期末考试数学试卷(含解析)
- 2024高考政治真题-哲学-汇集(解析版)
- 对承租方有利的商铺租赁合同
- 2024云南大学滇池学院教师招聘考试笔试试题
- 国外幼儿园自主游戏研究现状
- 浙江大学2011–2012学年冬季学期《高级数据结构与算法分析》课程期末考试试卷
- 职业生涯规划-体验式学习智慧树知到期末考试答案章节答案2024年华侨大学
评论
0/150
提交评论