计算机组成原理第四章答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4章习题参考答案
1.ASCII码是7位,如果设计主存单元字长为32位,指令字长为12位,是否合理?为什么?
答:不合理。指令最好半字长或单字长,设16位比较合适。一个字符的ASCII 是7位,如果设计主存单元字长为32位,则一个单元可以放四个字符,这也是可以的,只是在存取单个字符时,要多花些时间而已,不过,一条指令至少占一个单元,但只占一个单元的12位,而另20位就浪费了,这样看来就不合理,因为通常单字长指令很多,浪费也就很大了。
2.假设某计算机指令长度为32位,具有双操作数、单操作数、无操作数三类指令形式,指令系统共有70条指令,请设计满足要求的指令格式。
答:字长32位,指令系统共有70条指令,所以其操作码至少需要7位。
双操作数指令
单操作数指令
无操作数指令
3.指令格式结构如下所示,试分析指令格式及寻址方式特点。
答:该指令格式及寻址方式特点如下:
(1) 单字长二地址指令。
(2) 操作码字段OP可以指定26=64种操作。
(3) 源和目标都是通用寄存器(可分指向16个寄存器)所以是RR型指令,即两个操作数均在寄存器中。
(4) 这种指令结构常用于RR之间的数据传送及算术逻辑运算类指令。
4.指令格式结构如下所示,试分析指令格式及寻址方式特点。
15 10 9 8 7 4 3 0
答:该指令格式及寻址方式特点如下:
(1)双字长二地址指令,用于访问存储器。
(2)操作码字段OP可以指定26=64种操作。
(3)RS型指令,一个操作数在通用寄存器(选择16个之一),另一个操作数
在主存中。有效地址可通过变址寻址求得,即有效地址等于变址寄存器(选择16个之一)内容加上位移量。
5.指令格式结构如下所示,试分析指令格式及寻址方式特点。
答:该指令格式及寻址方式特点如下:
(1)该指令为单字长双操作数指令,源操作数和目的操作数均由寻址方式和寄
存器构成,寄存器均有8个,寻址方式均有8种。根据寻址方式的不同,指令可以是RR型、RS型、也可以是SS型;
(2)因为OP为4位,所以最多可以有16种操作。
6.一种单地址指令格式如下所示,其中为I间接特征,X为寻址模式,D为形式地址,I、X、D组成该指令的操作数有效地址E,设R为变址寄存器,R1为基值寄存器,PC为程序计数器,请在下表中第一列位置填入适当的寻址方式名
答:①直接寻址②相对寻址③变址寻址
④基址寻址⑤间接寻址⑥先基址后间接寻址
7.某计算机字长为32位,主存容量为64K字,采用单字长单地址指令,共有40条指令。试采用直接、立即、变址、相对四种寻址方式设计指令格式。
答:根据题意,40种指令至少需6位OP;四种寻址方式至少需用2位表示;主存为64K,则地址需要16位,而机器字长为32位,可设计如下格式:
设:
寻址方式X=00为直接寻址方式,由16位的D直接给出有效地址,EA=D
寻址方式X=01为立即寻址方式,由16位的D直接给出操作数,操作数=D
寻址方式X=10为变址寻址方式,设变址寄存器为IR,则EA=(IR)+D
寻址方式X=11为相对寻址方式,设程序计数器为PC,则EA=(PC)+D(D可正可负)
注:IR和PC的位数与机器的字长相等,均为32位
8.某机字长为32位,主存容量为1M,单字长指令,有50种操作码,采用寄存器寻址、寄存器间接寻址、立即、直接等寻址方式。CPU中有PC,IR,AR,DR和16个通用寄存器。问:
(1)指令格式如何安排?
(2) 能否增加其他寻址方式?
答:
(1) 根据题意,50种操作码至少需6位OP;寻址方式可用2位分别表示最多4种寻址方式;用4位编码选择16个通用寄存器之一作为源操作数或目的操作数,因机器字长为32位,固还剩20位可表示形式地址D
D
寻址方式字段=00,表示D为寄存器寻址,实际使用D中的4位进行寄存器选择;寻址方式字段=01,表示寄存器间接寻址,实际使用D中的4位进行寄存器选择;寻址方式字段=10,表示立即寻址,可使用D的全部确定一个立即数;
寻址方式字段=11,表示直接寻址,20位的D可确定一个存储单元。
(2) 若将形式地址的位数减少,则可以增加其他的寻址方式
9.设某机字长为32位,CPU中有16个32位通用寄存器,设计一种能容纳64种操作的指令系统。如果采用通用寄存器作基址寄存器,则RS型指令的最大存储空间是多少?
答:根据题意,64种操作至少需6位OP;用2位表示四种寻址方式;寄存器16个源操作数和目的操作数各用4位,因机器字长为32位,固还剩16位可表示形式地址D
空间最大可达232单元。
10.将表4.9的指令系统设计成二地址格式的指令系统。
答:表4.9中的指令共有29条,故操作码字段需要5位;设这些指令支持9种寻址方式:立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、间接寻址、相对寻址、基址寻址、变址寻址、堆栈寻址,则源和目的操作数各需要4位来确定
其寻址方式;因字长为32位,故还剩余19位用于表示源和目的操作数的形式地址,可取形式地址为9位,多余的1位可以加在操作码字段。即,格式如下:
11.从以下有关RISC的描述中,选择正确答案。
A.采用RISC技术后,计算机的体系结构又恢复到早期的比较简单的情况。B.为了实现兼容,新设计的RISC,是从原来CISC系统的指令系统中挑选一部分实现的。
C. RISC的主要目标是减少指令数。
D.RISC设有乘、除法指令和浮点运算指令。
答:C
12.根据操作数所在位置,指出其寻址方式(填空):
(1) 操作数在寄存器中,为(A)寻址方式。
(2) 操作数地址在寄存器,为(B)寻址方式。
(3) 操作数在指令中,为(C)寻址方式。
(4) 操作数地址(主存)在指令中,为(D)寻址方式。
(5) 操作数的地址,为某一寄存器内容与位移量之和,可以是(E,F,G)寻址方式。
答:A. 寄存器 B. 寄存器间接
C. 立即
D. 直接
E,F,G. 基址、变址、相对
13.将C语句翻译成MIPS R4000汇编语言代码。C赋值语句是:ƒ=(g+h)-(i+j)
假设变量ƒ、g、h、i、j分别分配给寄存器$s0、$s1、$s2、$s3、$s4。
答:该语句翻译成MIPS R4000汇编语句如下:
add $s5,$s1,$s2 ;将g+h的和存入寄存器$s5中($s5=$s1+$s2)
add $s6,$s3,$s4 ;将i+j的和存入寄存器$s6中($s6=$s3+$s4)
sub $s0,$s5,$s6 ;将结果存入寄存器$s0中($s0=$s5-$s6)
14.将如下MIPS R4000汇编语言翻译成机器语言指令。
lw $t0,1200($t1)
add $t0,$s2,$t0
sw $t0,1200($t1)
答:已知MIPS指令的字段值如下表所示,而且寄存器$s0~$s7对应的寄存器号