计算机组成原理蒋本珊第三章Word文件下载.docx

上传人:b****6 文档编号:20964013 上传时间:2023-01-26 格式:DOCX 页数:9 大小:23.65KB
下载 相关 举报
计算机组成原理蒋本珊第三章Word文件下载.docx_第1页
第1页 / 共9页
计算机组成原理蒋本珊第三章Word文件下载.docx_第2页
第2页 / 共9页
计算机组成原理蒋本珊第三章Word文件下载.docx_第3页
第3页 / 共9页
计算机组成原理蒋本珊第三章Word文件下载.docx_第4页
第4页 / 共9页
计算机组成原理蒋本珊第三章Word文件下载.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

计算机组成原理蒋本珊第三章Word文件下载.docx

《计算机组成原理蒋本珊第三章Word文件下载.docx》由会员分享,可在线阅读,更多相关《计算机组成原理蒋本珊第三章Word文件下载.docx(9页珍藏版)》请在冰豆网上搜索。

计算机组成原理蒋本珊第三章Word文件下载.docx

>

F

丄丄XXX\\\ZZZ

S条二Hk刚:

描令

100000XXXYYV

100111XXXYVV

ISO级甲虺如;

指令

1O1OOOOOOXXX

Ill丄丄0。

丄丄XXX

5.指令格式同上题,能否构成:

三地址指令4条,单地址指令2

55条,零地址指令64条?

为什么?

解匸二地址描令4条

000XXXYYYZZZ

A

011XXXYYYZZZ

单地址捋令255荼

100000000XXX

111111110YYY

只能再扩展岀零地址搐令S条”所以不能购成这样的描令系统“

6.指令中地址码的位数与直接访问的主存容量和最小寻址单位有

什么关系?

66解:

主存容量越大,所需的地址码位数就越长。

对于相同容量来说,最小寻址单位越小,地址码的位数就越长。

7.试比较间接寻址和寄存器间址。

间接寻址方式的有效地址在主存中,操作数也在主存中;

寄存器间址方式的有效地址在寄存器中,操作数在主存中。

所以间接寻

址比较慢。

8.试比较基址寻址和变址寻址。

基址寻址和变址寻址在形成有效地址时所用的算法是相同的,但是它们两者实际上是有区别的。

一般来说,变址寻址中变址寄存器提供修改量(可变的),而指令中提供基准值(固定的);

址寻址中基址寄存器提供基准值(固定的),而指令中提供位移量

(可变的)。

这两种寻址方式应用的场合也不同,变址寻址是面向用户的,用于访问字符串、向量和数组等成批数据;

而基址寻址面向系统,主要用于逻辑地址和物理地址的变换,用以解决程序在主存中的再定位和扩大寻址空间等问题。

在某些大型机中,基址寄存器只能由特权指令来管理,用户指令无权操作和修改。

9.某机字长为16位,主存容量为64K字,采用单字长单地址指令,共有50条指令。

若有直接寻址、间接寻址、变址寻址、相对寻址四种寻址方式,试设计其指令格式。

操作码6位,寻址方式2位,地址码8位。

10.某机字长为16位,主存容量为64K字,指令格式为单字长单地址,共有64条指令。

试说明:

(1)若只采用直接寻址方式,指令能访问多少主存单元?

(2)为扩充指令的寻址范围,可采用直接/间接寻址方式,若只

增加一位直接/间接标志,指令可寻址范围为多少?

指令直接寻址

的范围为多少?

(3)采用页面寻址方式,若只增加一位Z/C(零页/现行页)标

志,指令寻址范围为多少?

指令直接寻址范围为多少?

(4)采用

(2)、(3)两种方式结合,指令的寻址范围为多

少?

指令直接寻址范围为多少?

解:

因为卄畀机中共有64条捋令,所以操作码占6位.其余部分先地址码威标志位,

(1)若貝采用直接寻址方式"

地址码部分为ioajs令能访问的主存单元数为晋=

C)若采用肯接间接吊址方式*将增加f-位自接间接标志•地址码部分为9位、搞令直接寻址的范围为2"

=0^字,指令可寻址范国为整个主存空间2l°

=64K字口

(3)若采用页面寻址方式,将增加一位Z/C(?

页徳行页瘍志,所以指令有接寻址范围仍为夕=05K字•描令寻址范围仍为加=関K字.

(4)此时将需要@和2化两个标志位,所喙指令直接寻址范围为2*=0.25K指令的可寻址范围仍为216=64K字扫

11.设某机字长32位,CPU有32个32位的通用寄存器,设计一个能容纳64种操作的单字长指令系统。

(1)如果是存储器间接寻址方式的寄存器-存储器型指令,能直

接寻址的最大主存空间是多少?

(2)如果采用通用寄存器作为基址寄存器,能直接寻址的最大主存空间又是多少?

因为计算机中共有64条指令,所以操作码占6位;

32个通用寄存器,寄存器编号占5位;

其余部分为地址码或标志位。

(1)如果是存储器间接寻址方式的寄存器-存储器型指令,操作码6位,寄存器编号5位,间址标志1位,地址码20位,直接寻址的最大主存空间是,…字。

(2)如果采用通用寄存器作为基址寄存器,匕、=宀*)一僦,能直接寻址的最大主存空间是学字。

12.已知某小型机字长为16位,其双操作数指令的格式如下:

0卩

A

其中:

OP为操作码,R为通用寄存器地址。

试说明下列各种情况下能访问的最大主存区域有多少机器字?

(1)A为立即数。

(2)A为直接主存单元地址。

(3)A为间接地址(非多重间址)。

(4)A为变址寻址的形式地址,假定变址寄存器为

R1(字长为

16位)。

(1)

1个机器字。

(2)

256个机器字。

(3)

65536个机器字。

(4)

rrart/■-、」ttttria

6位)。

13.计算卜列4条指令的有效地址(指令长度为1

(1)0000

00Q

(2)100000Q(3)

170710Q

(4)012305Q

―旋述理条指令均用八进制书写赭令的最左边是一位间址指示位@<

@=o,直接寻址@=i.ra接寻址),且具有多重间访功能;

指令的&

右边两位为形式地琏;

主存容■a严单元,表弘4为有关主疗单元的内容(八进制人

表A4习题13的表格

(1)OOOOOOQ

因为指令的最高位为0・故为直接寻址,EA=

地址

内容

00000

100002

A=00000Qo

00001

04G710

(2)100000Q

00002

054304

因为指令的最高位为1•故指令为间接寻址。

00003

100000

(00000)=100002■最高位仍为1•继续间接寻址。

00004

102543

(00002)=054304,其昴髙位为0,裏示已找到有效

00005

100001

地址・EA=54304Q。

00006

0C3215

(3)170710Q

00007

077710

因为指令的最高位为1,故指令为间接寻址,

00010

100005

(00010)=100005,44筒位仍为1•继续间接孑址。

(00003尸100001尿髙位仍为1,继续间接寻址°

(00001)=046710•其晟髙位为0,表示已找到有效地址.EA=4G710Qo(4)012305(?

因为指令的最鬲位为0•故为育接寻址.EA=A=00005Qo

14.假定某机的箱令格式如下:

65

11109

8

OP

L

Z/C

BiiJLJL=1:

间接寻址;

Bii8=l;

变址窃存器;

Bii7=「变址奇存器4耳址;

Bil6<

容页/现行虫寻址);

N/C=O•表示O反面;

Z/C=l,夜示现行页而■即指令所在页而。

若主存容虽为尹个仔储单-元■分为2°

个页面,毎个页面右兰个字。

设有关侖存器的内容为

(PC)=03409(Ii)=1111Q(k)=O256Q试汁算下列指令的有效地址。

(1>

104GQ

(2>

2433Q

(3>

3215Q

(4>

丄丄丄丄Q

解;

(丄、104G4J=001000IdOL10

忸为4个标占位均为0,故为直按R」lL.EA=A=0046Q.

<

2>

2433V=010100Oil01丄

因为Bil8<

k)=1.故为变址寄仃器丄寻址十:

人=(H)+人=丄丄丄丄+龄=丄“4心“

3ZJ5Q—011010001101

冈为Ti;

t7<

J_〉■丄*故为变址奇疗器二孑址.FA-<

1.A—0!

^5G4IS—0273Q„

4>

丄丄丄丄Q」00丄00100100丄

因为BilGCZA:

)=1,故为当前页寻址,EA=(PC>

n#A=O3Z/ll=O3IlQo

15.假足)格式如卜:

LQ3U

7

P

丄2

丄丄

nv

【L

n/r

U/I为苴按TB搔订址尿志・D4=0衣于肯接寸址JJ1=1占加刨接寸址*其余怖盂何同题14说朋“

若主存容皐为驴个存储单-元,分为于个虫向.毎个W面有F亍字。

设有爻襦疗驕的内容为

(10—00^5439(L」一06強15Q(PC)—004S50Q

试汁算下■列搭令的右效地址。

(11152301Q

◎IO7^O13y

3>

161L23V

(4■140011V

f1,15^30lQ=l101010011000001

典勿HiilO(H}■1*放均亜址奇存裾J补til.F\=门;

)+沖=M;

忙1月+301—0G351byD

|0740139=0111100000001Dll

因为Bitll(L}=I,故为变址奇存器1寻址.EA=(L)+A=002543+013^0025569,

(3■1611239—11100010010100L1

因hHil0(Z(:

)=1M沟当前页扌址,EA=(PC)/A=OO4123Qo

(4,14001IQ=1100000000001001

困勿4,傢态仃均为0駅为TT播?

ItlltEA-A-000011Qe

16.举例说明哪几种寻址方式除去取指令以外不访问存储器?

几种寻址方式除去取指令外只需访问一次存储器?

完成什么样的指

令,包括取指令在内共访问4次存储器?

除去取指令以外不访问存储器:

立即寻址,寄存器寻址。

除去取指令外只需访问一次存储器:

直接寻址,寄存器间接寻址,变

址寻址,基址寻址,相对寻址,页面寻址

二级间接寻址包括取指令在内共访问4次存储器

17.设相对寻址的转移指令占两个字节,第一个字节是操作码,

第二个字节是相对位移量,用补码表示。

假设当前转移指令第一字节所在的地址为2000H,且CPU每取一个字节便自动完成(PC)+1

fPC的操作。

试问当执行JMP*+8和JMP*-9指令(倡为相对寻址特征)时,转移指令第二字节的内容各为多少?

转移的目

的地址各是什么?

转移指令第二字节的内容分别为:

00001000(+8),11110111

(-9)

转移的目的地址分别为:

200AH,1FF9H。

20.什么叫主程序和子程序?

调用子程序时还可采用哪几种方法保

存返回地址?

画图说明调用子程序的过程。

主程序就是指通常的程序,而子程序是一组可以公用的指令

序列,只要知道子程序的入口地址就能调用它。

保存返回地址的方法有多种:

(1)用子程序的第一个字单元存放返回地址。

转子指令把返回地址存放在子程序的第一个字单元中,子程序从第二个字单元开始执

行。

返回时将第一个字单元地址作为间接地址,采用间址方式返回主程序。

(2)用寄存器存放返回地址。

转子指令先把返回地址放到某一个

寄存器中,再由子程序将寄存器中的内容转移到另一个安全的地方。

(3)用堆栈保存返回地址。

调用子程序的过程如图3唱8所示,此时返回地址保存在堆栈中

K:

CALL

^+1:

札ET

图聲呂主程序圖用子程序的过程

21.在某些计算机中,调用子程序的方法是这样实现的:

转子指令将返回地址存入子程序的第一个字单元,然后从第二个字单元开始执行子程序,请回答下列问题:

(1)为这种方法设计一条从子程序转到主程序的返回指令。

(2)在这种情况下,怎么在主、子程序间进行参数的传递?

(3)上述方法是否可用于子程序的嵌套?

(4)上述方法是否可用于子程序的递归(即某个子程序自己调用自己)?

(5)如果改用堆栈方法,是否可实现(4)所提出的问题?

(1)返回指令通常为零地址指令。

返回地址保存在堆栈中,执行返回指令时自动从堆栈中弹出。

而目前返回地址是保存在子程序的第一个单元中,故此时返回指令不能再是零地址指令了,而应当是一地址指令。

如:

JMP

子程1亍戸地址

间接寻址可找到返回地址,然后无条件转移到返回的位置。

(2)在这种情况下,可利用寄存器或主存单元进行主、子程序间的参数传递。

(3)可以用于子程序的嵌套(多重转子)。

因为每个返回地址都

放在调用的子程序的第一个单元中。

(4)不可以用于子程序的递归,因为当某个子程序自己调用自己时,子程序第一个单元的内容将被破坏。

(5)如果改用堆栈方法,可以实现子程序的递归,因堆栈具有后进先出的功能。

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

当前位置:首页 > 高等教育 > 历史学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1