《计算机组成原理》课后题答案_清华大学出版_秦磊华_吴非·· 下载本文

KW,指令中操作数地址码由寻址方式字段与寄存器号字段组成。试问, (1) 单操作数指令最多有多少条? (2) 双操作数指令最多有多少条? (3) 变址寻址得范围多大?

解:由令中操作数地址码由寻址方式字段与寄存器号字段组成可知:16个通用寄存器,需要4位表示,8种寻址方式需3位表示.

(1)单操作数指令操作码位数16-4-3=9位 所以:最多有29=512条。

(2)双操作数得操作码位数:16—2*(4+3)=2位 所以:最多有22=4条

(3)变址寻址,因为寄存器为16位,所以寻址范围为:64K

5、5 假设某计算机得指令长度固定为16位,具有双操作数,单操作数与无操作数三类指令,每个操作数地址规定用6位表示。

(1)现已设计出m条双操作数指令,n条无操作数指令,在此情况下,这台计算机最多可设计出多少条单操作数指令?

(2)当双操作数指令取最大数,且在此基础上,单操作数指令条数也取最大值,试计算这3类指令最多可拥有多少条指令?

解:根据题目提交,该指令格式包含两个操作数字段(各6位)与一个操作码字段(4位),单操作数指令通过将指令得OP字段向不用得一个地址码字段扩展,零操作数指令在单操作数指令得基础上继续向另一个不用得地址码字段扩展。在扩展得过程中要注意留出扩展标志。

(1)可通过扩展得方式将操作码向地址码扩展。

则计算机最多有2=16条指令双操作数指令

这里,双操作数指令为m条,此时,操作码字段还有(16—m )种扩展标志,用于表示操作码向一个地址字段扩展。

本题目中已知道无操作数指令为n条,首先要知道,无操作数指令就是在一操作数指令得基础上,通过将操作码向最后一个地址字段扩展得到得,加上扩展得过程中用到了y个扩展标志,则n = y? 64 (每种扩展标志下,最后地址字段得6位全部标志无操作数指令),由此,可以得到y = n / 64

所以:单操作数得指有(16-m)*64— n / 64条。

(2)双操作数指令取最大数:2 -1=15条

单操作数指令取最大数:26—1=63条 无操作数指令最大有:26=64条

5、6设相对寻址得转移指令占三个字节,第一个字节就是操作码,第二个字节就是相对位移量(补码表示)得低8位,第三个字节就是相对位移量(补码表示)得高8位,每当CPU从存储器取一个字节时,便自动完成(PC)+1?PC:

(1)若PC当前值为256(十进制),要求转移到290(十进制),则转移指令第二、三字节得机器代码就是什么(十六进制)?

(2)若PC当前值为128(十进制),要求转移到110(十进制),则转移指令第二、三字节得机器代码又就是什么(十六进制)?

解:根据相对寻址有效地址得计算公式 EA=(PC)+ D 可知 D = EA - (PC)

对于相对寻址而言,关键就是要求出计算有效地址时PC得当前值。

(1) 根据题意,采用相对寻址指令得地址为256,PC在取指令完成后修改,则取指令完成

后PC=256+3=259 (因为指令长度为3个字节) 所以:D = 290—259 =(31)10= 001FH

故:转移转移指令第二字节为:1FH,第三字节为:00H。

(2) 根据题意,采用相对寻址指令得地址为128,PC在取指令完成后修改,则取指令完成后PC=128+3=131

所以:D = 110-131=(-21)10=FFEDH(补码)

故:转移转移指令第二字节为:EBH,第三字节为:FFH。

5、7 某计算机有变址、间接与相对等三种寻址方式,设指令由操作码、寻址方式特征位与地址码三部分组成,且为单字长指令。设当前指令得地址码部分为001AH,正在执行得指令所在地址为1F05H,变址寄存器中得内容为23A0H,已知存储器得部分地址及相关内容如表5、11所示:

表5、11 存储器内容分配

地址 001AH 1F05H 1F1FH 23A0H 23BAH 内容 23A0H 2400H 2500H 2600H 1748H

根据要求完成下列填空:

⑴ 当执行取数指令时,如为变址寻址方式,则取出来得数为_________。 ⑵ 如为间接寻址,取出得数为_________。 ⑶ 当采用相对寻址时,有效地址为_________。

解:(1)当为变址寻址方式时,变址寄存器为23A0H,当前地址码部分为:001AH EA=23A0H+001AH=23BAH 所以读出得数为:1748H

(2) 当为间接寻址时,当前地址码部分为:001AH,则有效地址为: EA=[001A]=23A0H

所以读出得数为:2600H

(3)当为相对寻址时,当前执行指令得地址为1F05H,则PC=PC+2=1F05H+2=1F07H(指令长度为两个字节) EA=1F07H+001AH=1F21H

没有该地址对应得内容,说明CPU所访问得内容不在主存中.

5、8某计算机得指令格式包括操作码OP、寻址方式特征位I与形式地址D等三个字段,其中OP字段6位,寻址方式特征位字段I为2位,形式地址字段D为8位。I得取值与寻址方式得对应关系为: I=00:直接寻址

I=01:用变址寄存器X1进行变址; I=10:用变址寄存器X2进行变址; I=11:相对寻址、 设(PC)=1234H,(X1)=0037H , (X2)=1122H,以下四条指令均采用上述格式,请确定这些指令得有效地址:

(1)4420H (2)2244H (3)1322H (4)3521H 解:(1)4420H=(00000)B OP I D 010001 00 I=00,变址寻址方式,EA= 20H (2)2244H=0010 0010 0100 0100B OP 001000 I 10 D I=10:用变址寄存器X2进行变址 E=(X2)+D=1166H

(3)1322H=0001 0011 0010 0010B OP 000100 I 11 D I=11:相对寻址

E=(PC)+2+D=1258H (双字节长指令) (4)3521H=0011 0101 0010 0001B OP 001101 I 01 D I=01:用变址寄存器X1进行变址 E=(X1)+D=0058H

5、9 某计算机A有60条指令 ,指令得操作码字段固定为6位,从000000—111011,该机器得后续机型B中需要增加32条指令,并与A保持兼容, (1)试采用操作码扩展方法为计算机B设计指令操作码、 (2)计算计算机B中操作码得平均长度、

解:(1) 因为计算机B要与计算机A兼容所以计算机A中得指令得保留:所以000000—111011为A得操作码部分。操作码字段得11100-111111得取值将作为扩展标识,将操作码扩展到地址字段,只需要占用地址字段3位即可表示新得32条指令。 (2)由(1)可知,有60条指令得操作码为6位,32条指令得操作码为9位 所以平均长度为:(60*6+32*11)/92=7、74位、

5、10 以下MIPS指令代表什么操作?写出它得MIPS汇编指令格式 0000 0000 1010 1111 1000 0000 0010 0000 解:OP=000000 Funct=100000

rs=00101 则对应得寄存器名称 rs=$a1 rt=01111 则对应得寄存器名称 rt=$t7 rd=10000 则对应得寄存器名称 rd=$ S0 所以,汇编格式为 ADD $S0,$a1,$t7

5、11 假定以下C语句中包含得变量f,g,h,i,j分别存放在寄存器$11———$15中,写出完成C语言语句f=(g+h)*i/j功能得MIPS汇编指令序列,并写出每条MIPS指令得十六进制数、

解:设f对应$11($t3)=01011B g对应$12($t4)=01100B

h对应$13($t5)=01101B i对应$14($t6)=01010B i对应$15($t7)=01111B 对应得汇编指令 odd $t3,$t4,$t5

0000,0001,1000,1101,0101,1000,0010,0000 018D5820H mult $t3,$t6

0000,0001,0110,1110,0000,0000,0001,1000 016E0018H

MFLO $t3

0000,0000,0000,0000,0101,1000,0001,0010 00005812H div $t3,$t7

0000,0001,0110,1111,0000,0000,0001,1010 016F001AH MFLO $t3

0000,0000,0000,0000,0101,1000,0001,0H

第六章 控制器 习 题 六

6、1解释下列名词

指令周期 数据通路 时钟周期 同步控制 异步控制 联合控制 单周期处理器 多周期处理器 微操作 相容性微命令 互斥性微命令 微指令 微程序 微程序控制器 控制存储器 硬布线控制器 6、1、 答:

指令周期:取指令并执行一条指令所需要得时间,一般由若干个机器周期组成,包括从取指令、分析指令到执行完所需得全部时间。

数据通路:数据在功能部件之间传送得路径.

时钟周期:由CPU时钟定义得定长时间间隔,就是CPU工作得最小时间单位,也称节拍脉冲或T周期。

同步控制:选取部件中最长得操作时间作为统一得时间间隔标准,使所有部件都在这个时间间隔内启动并完成操作。

异步控制:系统不设立统一得时间间隔标准(基准时钟除外),各部件按各自得时钟工作,分别实现各自得时序控制,时间衔接通过应答通讯方式(又称握手方式)实现。

联合控制:同步控制与异步控制相结合。对大多数节拍数相近得指令,采用同步控制;而对少数节拍数多不固定得指令,采用异步控制。

单周期处理器:所有指令在一个时钟周期内完成得处理器。

多周期处理器:每条指令得执行分成多个阶段,每个时钟周期完成一个阶段得工作。 微操作:执行部件收到微命令后所进行得操作。 相容性微命令:能同时并行执行得微命令。 互斥性微命令:不能并行执行得微操作。

微指令:由微指令产生得一组实现一定微操作功能得微命令得组合. 微程序:实现一条指令功能得若干条微指令得集合.

微程序控制器:采用微程序设计方法设计得控制器。指令执行过程中所需要得所有控制信号以微指令得方式存在在控制存储器中,指令执行时,逐条读出微指令,以产生执行执行过程中所需要得控制信号.

控制存储器:微程序控制器中用于存放解释所有指令微程序得存储器。

硬布线控制器:又称为组合逻辑控制器,指令执行所需要得控制信号直接由逻辑门电路与触发器等构成得电路产生,与微程序控制器相比,具有结构复杂但速度快得特点. 6、2 回答下列问题

1)中央处理器得基本功能就是什么?从实现其功能得角度分析,它应由哪些部件组成? 答:五方面得功能:

指令执行顺序得控制.即控制程序中得指令按事先规定得顺序自动地执行,从而保证