Advertisement

计算机软件基础第四章答案,计算机组成原理第四章答案

阅读量:

第4章习题参考答案

ASCII码由7位二进制数组成;若将主存单元的字长设定为32位,并将指令字段长度设定为16位是否合理?其原因是什么?

此方案不合理,请考虑优化指令长度设置

请若某计算机采用32位编码方式...并设计一种满足以下条件的计算机指令格式:每条指令包含操作码、操作数字段以及必要控制字段

答:字长32位,指令系统共有70条指令,所以其操作码至少需要7位。 双操作数指令

单操作数指令

无操作数指令

3.指令格式结构如下所示,试分析指令格式及寻址方式特点。

答:该指令格式及寻址方式特点如下: (1) 单字长二地址指令。

(2) 操作码字段OP 可以指定26=64种操作。

通用源端和通用目的端(每个可支持16个寄存器)因此成为RR型指令,在这种情况下两个操作数均位于寄存器中。

(4) 这种指令结构常用于RR 之间的数据传送及算术逻辑运算类指令。

4.指令格式结构如下所示,试分析指令格式及寻址方式特点。 15 10 9 8 7 4 3 0

答:该指令格式及寻址方式特点如下:

(1) 双字长二地址指令,用于访问存储器。 (2) 操作码字段OP 可以指定26=64种操作。

RS类指令中包含两种操作数:其中一个操作数位于通用寄存器(从16个可选选项中选择),另一个操作数位于主存储器中。其有效地址可通过变址寄存器进行计算得出(其值等于变址寄存器的内容与位移量之和)。

5.指令格式结构如下所示,试分析指令格式及寻址方式特点。

6.一种单地址指令格式如下所示,请在表格相应位置填写适当的操作码类型。该指令包含间接特征项I、寻址模式X以及形式地址字段D。令R表示变址寄存器内容、R1表示基值寄存器值,并令PC代表程序计数值。其中包含间接特征项I、寻址模式X以及形式地址字段D构成该指令的操作数有效操作地址E。

答: ① 直接寻址 ② 相对寻址 ③ 变址寻址

④ 基址寻址 ⑤ 间接寻址 ⑥ 先基址后间接寻址

该计算机采用32位架构,并配备64KB的主存储器容量。该系统使用基于单字长和单地址码的指令结构,并包含40条不同的指令。为了便于系统操作,请分别按照直接寻址、立即寻址、变址寻址以及相对寻址等方式构建相应的指令格式。

设:

当X=00时采用直接寻址策略,在该模式下EA字段由16位D直接赋值;而当X=01时采用立即操作数处理策略,并且其中操作数字段同样由16位D进行赋值;对于X=10的情况则采用了变址寻址模式,在这种情况下引入变址寄存器IR后,则地址计算公式可表示为EA=(IR)+D

寻址方式X=11为相对寻址方式,设程序计数器为PC ,则EA=(PC)+D(D可正可负)

注:IR 和PC 的位数与机器的字长相等,均为32位

8.该机采用32位架构,并配备主存储器容量达到1兆的内存空间。该系统设计基于单字指令,并支持50种不同的操作码。为了实现高效的地址访问功能,在数据传输方面采用了寄存器寻址和寄存器间接寻址等多种寻址策略,并辅以立即和直接两种基本的访问方式。其中CPU包含多个核心组件:其中CPU包含PC(程序计数器)、IR(指令寄存器)、AR(地址寄存器)、DR(数据寄存器)以及一套完整的通用寄存器资源 bank 以满足多种数据处理需求。那么问题(1):指令格式应该如何设计?

(2) 能否增加其他寻址方式? 答:

(1) 按照题目所述,在设计时需要满足以下条件:每一种操作码至少需要6位二进制编码来表示;通过使用两位二进制数即可实现最多四种不同的寻址方式;采用四位二进制编码可以选择其中一个来自16个通用寄存器的元素作为源或目标操作数;由于机器字长设置为32位, 因此剩下的高位还能用于表示地址D。

当寻址方式字段设置为00时(即表示),该操作机将采用寄存器寻址的方式;具体而言,则会利用D中的4位来选择对应的寄存器;而当寻址方式字段设置为01时(即表示),该操作机将采用寄存器间接寻址的方式;其中D中的4位被用来选择对应的寄存器;当寻址方式字段设置为10时(即表示),该操作机将执行立即寻址的方式;具体而言,则会利用D的全部20位来指定一个存储单元的位置;最后一种情况是当寻址方式字段设置为11时(即表示),该操作机将采用直接寻址的方式;此时系统会直接根据D中给出的20位地址值来定位相应的存储单元位置。

(2) 若将形式地址的位数减少,则可以增加其他的寻址方式

9.假设某台计算机采用32位数据格式(即字长为32位),其中央处理器(CPU)内拥有16个独立的32位通用寄存器。本题要求设计一个指令系统架构,使其能够执行64种不同的操作指令。当普遍使用通用寄存器作为基址寄存器时,请计算RS型指令指令集所能提供的最大存储区域容量。

按照题目要求, 64种操作最低需要六个OP字段;采用2位字段来标识四种寻址方式;每个源操作数和目的操作数均占用4位存储空间, 因机器字长为32bit, 剩余的空间则用于编码形式地址D

空间最大可达232单元。

10.将表4.9的指令系统设计成二地址格式的指令系统。

在表格4.9中列出的指令共计有29条,在确定操作码时需要使用5位二进制编码。这些指令采用不同的地址方式实现功能:包括立即寻址、直接寻址等共9种类型。其中每个指令的操作数范围由相应的地址类型决定,在这种假设下源和目的操作数各需使用4位二进制编码来表示。

其寻址方式;由于字长为32位,在表示源操作数与目的操作数的形式地址时会剩余19位可用空间。其中可以选择形式地址占用9位的空间,则多余的一条信息则可以附加到操作码字段中。具体来说:例如:在该结构中, 操作码字段会多出一位

11.从以下有关RISC 的描述中,选择正确答案。

A.基于RISC技术的应用,计算机体系结构回归到早期较为简单的状态。
B.为了保证兼容性需求,新设计的RISC指令集来源于原CISC系统的指令提取。

C. RISC的主要目标是减少指令数。

D .RISC 设有乘、除法指令和浮点运算指令。

答:C

根据操作数的位置,请填写以下三种情况的操作码类型:
(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汇编语句如下:

完成累加运算至寄存器s5中的值(即为1与2之和:1 + 2); 完成累加运算至寄存器s6中的值(即为3与4之和:3 + 4);
执行减法运算至寄存器0中的结果(即用 registers 里的内容进行差值计算: register 里的内容相减)

14.将如下MIPS R4000汇编语言翻译成机器语言指令。 lw t0,1200(t1) add t0,s2,t0 sw t0,1200($t1)

答:已知MIPS 指令的字段值如下表所示,而且寄存器s0~s7对应的寄存器号

将ARM汇编语言指令ADD r5,r1,r2转换为分别采用十进制表示法和二进制表示法的机器语言指令

16.将下面C 语言翻译成ARM 汇编语言代码,C 赋值语句是:

ƒ=(g+h)-(i+j)

假设变量ƒ、g 、h 、i 、j 分别放在寄存器r0、r1、r2、r3、r4中

答:该语句翻译成ARM 汇编语句如下:

add r5,r1,r2 ; 将g+h的和存入寄存器r5中(r5=r1+r2)

add r6,r3,r4 sub r0,r5,r6

; 将i+j的和存入寄存器r6中(r6=r3+r4) ; 将结果存入寄存器r0中(r0=r5-r6)

全部评论 (0)

还没有任何评论哟~