计算机组成原理第五版白中英详细第4章习题参考答案.docx

上传人:b****1 文档编号:2388589 上传时间:2023-05-03 格式:DOCX 页数:10 大小:19.25KB
下载 相关 举报
计算机组成原理第五版白中英详细第4章习题参考答案.docx_第1页
第1页 / 共10页
计算机组成原理第五版白中英详细第4章习题参考答案.docx_第2页
第2页 / 共10页
计算机组成原理第五版白中英详细第4章习题参考答案.docx_第3页
第3页 / 共10页
计算机组成原理第五版白中英详细第4章习题参考答案.docx_第4页
第4页 / 共10页
计算机组成原理第五版白中英详细第4章习题参考答案.docx_第5页
第5页 / 共10页
计算机组成原理第五版白中英详细第4章习题参考答案.docx_第6页
第6页 / 共10页
计算机组成原理第五版白中英详细第4章习题参考答案.docx_第7页
第7页 / 共10页
计算机组成原理第五版白中英详细第4章习题参考答案.docx_第8页
第8页 / 共10页
计算机组成原理第五版白中英详细第4章习题参考答案.docx_第9页
第9页 / 共10页
计算机组成原理第五版白中英详细第4章习题参考答案.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

计算机组成原理第五版白中英详细第4章习题参考答案.docx

《计算机组成原理第五版白中英详细第4章习题参考答案.docx》由会员分享,可在线阅读,更多相关《计算机组成原理第五版白中英详细第4章习题参考答案.docx(10页珍藏版)》请在冰点文库上搜索。

计算机组成原理第五版白中英详细第4章习题参考答案.docx

计算机组成原理第五版白中英详细第4章习题参考答案

第4章习题参考答案

1.ASCII码是7位,如果设计主存单元字长为32位,指令字长为12位,是否合理为什么

答:

不合理。

指令最好半字长或单字长,设16位比较合适。

一个字符的ASCII是7位,如果设计主存单元字长为32位,则一个单元可以放四个字符,这也是可以的,只是在存取单个字符时,要多花些时间而已,不过,一条指令至少占一个单元,但只占一个单元的12位,而另20位就浪费了,这样看来就不合理,因为通常单字长指令很多,浪费也就很大了。

2.假设某计算机指令长度为32位,具有双操作数、单操作数、无操作数三类指令形式,指令系统共有70条指令,请设计满足要求的指令格式。

答:

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

双操作数指令

7位OP

12位操作数

12位操作数

单操作数指令

7位OP

25位操作数

无操作数指令

7位OP

-

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

1510

!

98

74

30

OP

-

目标寄存器

源寄存器

答:

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

(1) 单字长二地址指令。

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

(3) 源和目标都是通用寄存器(可分指向16个寄存器)所以是RR型指令,即两个操作数均在寄存器中。

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

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

1510987430

1510

98

74

30

OP

-

源寄存器

变址寄存器

偏移量(16位)

答:

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

(1)双字长二地址指令,用于访问存储器。

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

(3)RS型指令,一个操作数在通用寄存器(选择16个之一),另一个操作数在主存中。

有效地址可通过变址寻址求得,即有效地址等于变址寄存器(选择16个之一)内容加上位移量。

|

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

1512

119

86

53

20

OP

寻址方式

寄存器

[

寻址方式

寄存器

源地址

目标地址

答:

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

(1)该指令为单字长双操作数指令,源操作数和目的操作数均由寻址方式和寄存器构成,寄存器均有8个,寻址方式均有8种。

根据寻址方式的不同,指令可以是RR型、RS型、也可以是SS型;

(2)因为OP为4位,所以最多可以有16种操作。

6.一种单地址指令格式如下所示,其中为I间接特征,X为寻址模式,D为形式地址,I、X、D组成该指令的操作数有效地址E,设R为变址寄存器,R1为基值寄存器,PC为程序计数器,请在下表中第一列位置填入适当的寻址方式名称。

寻址方式名称

I

X

有效地址E

}

0

0

0

0

1

1

00

01

10

|

11

00

10

E=D

E=(PC)+D

E=(R)+D

E=(R1)+D

E=(D)

E=((R1)+D),D=0

答:

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

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

7.某计算机字长为32位,主存容量为64K字,采用单字长单地址指令,共有40条指令。

试采用直接、立即、变址、相对四种寻址方式设计指令格式。

答:

根据题意,40种指令至少需6位OP;四种寻址方式至少需用2位表示;主存为64K,则地址需要16位,而机器字长为32位,可设计如下格式:

3126

2518

1716

150

OP

-

寻址方式X

D

设:

寻址方式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

3126

2524

2320

^

190

OP

寻址方式

寄存器

D

D字段的寻址方式由25-24位决定,如:

寻址方式字段=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

3126

2524

2320

1916

#

150

OP

寻址方式

源寄存器

目的寄存器

D

如果采用通用寄存器作基址寄存器,因为寄存器为32,位所以RS型指令可寻址空间最大可达232单元。

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

答:

表中的指令共有29条,故操作码字段需要5位;设这些指令支持9种寻址方式:

立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、间接寻址、相对寻址、基址寻址、变址寻址、堆栈寻址,则源和目的操作数各需要4位来确定其寻址方式;因字长为32位,故还剩余19位用于表示源和目的操作数的形式地址,可取形式地址为9位,多余的1位可以加在操作码字段。

即,格式如下:

3126

2522

2113

129

80

OP

目的寻址方式

目的操作数

源寻址方式

}

源操作数

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语句翻译成MIPSR4000汇编语言代码。

C赋值语句是:

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

假设变量、g、h、i、j分别分配给寄存器$s0、$s1、$s2、$s3、$s4。

答:

该语句翻译成MIPSR4000汇编语句如下:

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.将如下MIPSR4000汇编语言翻译成机器语言指令。

lw$t0,1200($t1)

add$t0,$s2,$t0

sw$t0,1200($t1)

答:

已知MIPS指令的字段值如下表所示,而且寄存器$s0$s7对应的寄存器号为1623(十进制),寄存器$t0$t7对应的寄存器号为815。

MIPS指令的字段值

指令

格式

op

rs

rt

rd

shamt

funct

常数或地址

add(加)

R

0

reg

#

reg

reg

0

32

sub(减)

R

0

reg

reg

reg

0

34

立即数加

I

8

reg

reg

\

常数

lw(取字)

I

35

reg

reg

address

sw(存字)

I

43

reg

reg

#

address

由此,可写出以上3条指令翻译成机器语言指令如下表所示。

3条指令对应的机器语言

指令

机器语言各字段

各字段长度

6位

5位

5位

5位

!

5位

6位

R型

op

rs

rt

rd

shamt

funct

I型

op

rs

rt

address

lw$t0,1200($t1)

35

9

8

1200

add$t0,$s2,$t0

0

18

8

8

0

32

sw$t0,1200($t1)

43

9

8

1200

15.将下面一条ARM汇编语言指令翻译成用十进制和二进制表示的机器语言指令:

ADDr5,r1,r2

答:

已知ARM汇编指令的指令译码格式如下表所示:

ADD、SUB、LDR、STR指令的指令译码格式

指令名称

cond

F

I

opcode

S

Rn

Rd

operand2

ADD(加)

14

0

0

4

0

reg

reg

reg

SUB(减)

14

0

0

2

0

\

reg

reg

reg

ADD(立即数加)

14

0

1

4

0

reg

?

reg

constant(12位)

LDR(取字)

14

1

24

reg

reg

]

address(12位)

STR(存字)

14

1

25

reg

reg

address(12位)

|

由此,可得该指令的十进制和二进制的机器语言如下表所示

ADDr5,r1,r2的机器语言

cond

F

opcode

Rn

Rd

offset12

I

opcode

S

operand12

十进制

14

0

0

4

0

1

5

2

二进制

1110

0

0

100

0

0001

0101

000000000010

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

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

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

答:

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

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

addr6,r3,r4;将i+j的和存入寄存器r6中(r6=r3+r4)

subr0,r5,r6;将结果存入寄存器r0中(r0=r5-r6)

^

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2