文档库 最新最全的文档下载
当前位置:文档库 › 计算机组织与系统结构第五章习题答案

计算机组织与系统结构第五章习题答案

计算机组织与系统结构第五章习题答案
计算机组织与系统结构第五章习题答案

第 5 章习题答案

3.假定某计算机中有一条转移指令,采用相对寻址方式,共占两个字节,第一字节是操作码,第二字节是相对位移量(用补码表示),CPU每次从内存只能取一个字节。假设执行到某转移指令时PC的内容为200,执行该转移指令后要求转移到100开始的一段程序执行,则该转移指令第二字节的内容应该是多少?

参考答案:

因为执行到该转移指令时PC为200,所以说明该转移指令存放在200单元开始的两个字节中。因为CPU每次从内存只能取一个字节,所以每次取一个字节后PC应该加1。

该转移指令的执行过程为:取200单元中的指令操作码并译码→PC+1→取201单元的相对位移量→PC+1→计算转移目标地址。假设该转移指令第二字节为Offset,则100=200+2+Offset,即Offset = 100–202 = –102 = 10011010B

(注:没有说定长指令字,所以不一定是每条指令占2个字节。)

4.假设地址为1200H的内存单元中的内容为12FCH,地址为12FCH的内存单元的内容为38B8H,而38B8H单元的内容为88F9H。说明以下各情况下操作数的有效地址和操作数各是多少?

(1)操作数采用变址寻址,变址寄存器的内容为12,指令中给出的形式地址为1200H。

(2)操作数采用一次间接寻址,指令中给出的地址码为1200H。

(3)操作数采用寄存器间接寻址,指令中给出的寄存器编号为8,8号寄存器的内容为1200H。

参考答案:

(1)有效地址EA=000CH+1200H=120CH,操作数未知。

(2)有效地址EA=(1200H)=12FCH,操作数为38B8H。

(3)有效地址EA=1200H,操作数为12FCH。

5.通过查资料了解Intel 80x86微处理器和MIPS处理器中各自提供了哪些加法指令,说明每条加法指令的汇编形式、指令格式和功能,并比较加、减运算指令在这两种指令系统中不同的设计方式,包括不同的溢出处理方式。

参考答案(详细信息略):

MIPS:

Intel 80x86:

6. 某计算机指令系统采用定长指令字格式,指令字长16位,每个操作数的地址码长6位。指令

分二地址、单地址和零地址三类。若二地址指令有k2条,无地址指令有k0条,则单地址指令最多有多少条? 参考答案:

设单地址指令有k1条,则 ((16 – k2) ×26 – k1) ×26 = k0,所以 k1= (16 – k2) ×26 – k0/26

7. 某计算机字长16位,每次存储器访问宽度16位,CPU 中有8个16位通用寄存器。现为该机

设计指令系统,要求指令长度为字长的整数倍,至多支持64种不同操作,每个操作数都支持4种寻址方式:立即(I )、寄存器直接(R )、寄存器间接(S )和变址(X ),存储器地址位数和立即数均为16位,任何一个通用寄存器都可作变址寄存器,支持以下7种二地址指令格式(R 、I 、S 、X 代表上述四种寻址方式):RR 型、RI 型、RS 型、RX 型、XI 型、SI 型、SS 型。请设计该指令系统的7种指令格式,给出每种格式的指令长度、各字段所占位数和含义,并说明每种格式指令需要几次存储器访问? 参考答案:

指令格式可以有很多种,只要满足以下的要求即可。

操作码字段:6位;寄存器编号:3位;直接地址和立即数:16位;变址寄存器编号:3位;总位数是8的倍数。 指令格式例1:

指令格式例2:

RR 型

RI 型 RS 型 RX 型

XI 型 SI 型 SS 型

寻址方式字段(2位)----00:立即;01:寄直;10:寄间;11-变址

8. 有些计算机提供了专门的指令,能从32位寄存器中抽取其中任意一个位串置于一个寄存器的

低位有效位上,并高位补0,如下图所示。MIPS 指令系统中没有这样的指令,请写出最短的一个MIPS 指令序列来实现这个功能,要求i=5, j=22, 操作前后的寄存器分别为$s0和$s2。

参考答案:

可以先左移9位,然后右移15位,即:

sll $s2, $s0, 9

srl $s2, $s2, 15

思考:(1) 第二条用算术右移指令sra 行不行?

不行,因为不能保证高位补0!

(2) 若第一条指令中的$s2改成其他寄存器R ,则会带来什么问题? 所用寄存器R 的值被破坏!

9. 以下程序段是某个过程对应的指令序列。入口参数int a 和int b 分别置于$a0和$a1中,返回

参数是该过程的结果,置于$v0中。要求为以下MIPS 指令序列加注释,并简单说明该过程的功能。

add $t0, $zero, $zero loop:

beq $a1, $zero, finish

j

(32–(j –i) )位

(j –i)位

RR 型

RI 型 RS 型

RX 型 XI 型 SI 型

SS 型

add $t0, $t0, $a0

sub $a1, $a1, 1

j loop

finish: addi $t0, $t0, 100

add $v0, $t0, $zero

参考答案:

1: 将t0寄存器置零

2: 如果a1的值等于零则程序转移到finish处

3: 将t0和a0的内容相加,结果存放于t0

4: 将a1的值减1

5: 无条件转移到loop处

6: 将t0的内容加上100,结果存放于t0

7: 将t0的值存放在v0

该程序的功能是计算“100+a×b”

10.下列指令序列用来对两个数组进行处理,并产生结果存放在$v0中。假定每个数组有2500 个字,其数组下标为0到2499。两个数组的基地址分别存放在$a0和$a1中,数组长度分别存放在$a2和$a3中。要求为以下MIPS指令序列加注释,并简单说明该过程的功能。假定该指令序列运行在一个时钟频率为2GHz的处理器上,add、addi和sll指令的CPI为1;lw和bne 指令的CPI为2,则最坏情况下运行所需时间是多少秒?

sll $a2, $a2, 2

sll $a3, $a3, 2

add $v0, $zero, $zero

add $t0, $zero, $zero

outer: add $t4, $a0, $t0

lw $t4, 0($t4)

add $t1, $zero, $zero

inner: add $t3, $a1, $t1

lw $t3, 0($t3)

bne $t3, $t4, skip

addi $v0, $v0, 1

skip: a ddi $t1, $t1, 4

bne $t1, $a3, inner

addi $t0, $t0, 4

bne $t0, $a2, outer

参考答案:

1: 将a2的内容左移2位,即乘4

2: 将a3的内容左移2位,即乘4

3: 将v0置零

4: 将t0置零

5: 将第一个数组的首地址存放在t4

6: 取第一个数组的第一个元素存放在t4

7: 将t1置零

8: 将第二个数组的首地址存放在t3

9: 取第二个数组的第一个元素存放在t3

10: 如果t3和t4不相等,则跳转到skip

11: 将v0的值加1,结果存于v0

12: 将t1的值加4,结果存于t1

13: 如果t1不等于a3,即还未取完数组中所有元素,则转移到inner

14: 将t0的值加4

15: 如果t0不等于a2,即还未取完数组中所有元素,则转移到outer

该程序的功能是统计两个数组中相同元素的个数。

程序最坏的情况是:两个数组所有元素都相等,这样每次循环都不会执行skip。因此,指令总条数为:5+2500×(3+2500×6+2)=37512505,

其中:add,addi和sll的指令条数为:4+2500×(2+2500×3+1)=18757504

lw和bne的指令条数为:1+2500×(1+2500×3+1)=18755001

所以:程序执行的时间为:(2GHzclock的clock time=1/2G=0.5ns)

(18757504×1+18755001×2) × 0.5ns = 28133753ns≈0.028s

11.用一条MIPS指令或最短的指令序列实现以下C语言语句:b=25|a。假定编译器将a和b分别分配到$t0和$t1中。如果把25换成65536,即b=65536|a,则用MIPS指令或指令序列如何实现?

参考答案:

只要用一条指令ori $t1, $t0, 25就可实现。

如果把25换成65536,则不能用一条指令ori $t1, $t0, 65536来实现,因为65536 (1 0000 0000 0000 0000B)不能用16位立即数表示。可用以下两条指令实现。

lui $t1, 1

or $t1, $t0, $t1

12.以下程序段是某个过程对应的MIPS指令序列,其功能为复制一个存储块数据到另一个存储块中,存储块中每个数据的类型为float,源数据块和目的数据块的首地址分别存放在$a0和$a1中,复制的数据个数存放在$v0中,作为返回参数返回给调用过程。在复制过程中遇到0则停止,最后一个0也需要复制,但不被计数。已知程序段中有多个Bug,请找出它们并修改。

addi $v0, $zero, 0

loop: lw $v1, 0($a0)

sw $v1, 0($a1)

addi $a0, $a0, 4

addi $a1, $a1, 4

beq $v1, $zero, loop

参考答案:

修改后的代码如下:

addi $v0, $zero, 0

loop: lw $v1, 0($a0)

sw $v1, 0($a1)

beq $v1, $zero, exit

addi $a0, $a0, 4

addi $a1, $a1, 4

addi $v0, $v0, 1

j loop

exit:

13.说明beq指令的含义,并解释为什么汇编程序在对下列汇编源程序中的beq指令进行汇编时会遇到问题,应该如何修改该程序段?

here: beq $s0, $s2, there

……

there: addi $s1, $s0, 4

参考答案:

beq是一个I-型指令,可以跳转到当前指令前,也可以跳转到当前指令后。其转移目的地址的计算公式为:PC+4+offset×4,offset是16位带符号整数,用补码表示。因此,分支指令beq的相对转移范围如下。

其正跳范围为:0000 0000 0000 0000(4)~ 0111 1111 1111 1111(217=4+(215–1)×4)

负跳范围为:1000 0000 0000 0000(4–217=4+(–215)×4)~ 1111 1111 1111 1111(0=4+(–1)×4)超过以上范围的跳转就不能用上述指令序列实现。

因此,上述指令序列应该改成以下指令序列:

here: bne $s0, $s2, skip

j there

skip: ……

……

there: add $s0, $s0, $s0

14.以下C语言程序段中有两个函数sum_array和compare,假定sum_array函数第一个被调用,全局变量sum分配在寄存器$s0中。要求写出每个函数对应的MIPS汇编表示,并画出每个函数调用前、后栈中的状态、帧指针和栈指针的位置。

1 int sum=0;

2 int sum_array(int array[], int num)

3 {

4 int i;

5 for (i = 0; i < num; i ++)

6 if compare (num, i+1) sum+=array[i] ;

7 return sum;

8 }

9 int compare (int a, int b)

10 {

11 if ( a >b)

12 return 1;

13 else

14 return 0;

15 }

参考答案(图略):

程序由两个过程组成,全局静态变量sum分配给$s0。

为了尽量减少指令条数,并减少访问内存次数。在每个过程的过程体中总是先使用临时寄存器$t0~$t9,临时寄存器不够或者某个值在调用过程返回后还需要用,就使用保存寄存器$s0~$s7。

MIPS指令系统中没有寄存器传送指令,为了提高汇编表示的可读性,引入一条伪指令move 来表示寄存器传送,汇编器将其转换为具有相同功能的机器指令。伪指令“move $t0, $s0”对应的机器指令为“add $t0,$zero,$s0”。

(1)过程set_array:该过程和教材中例5.10中的不同,在例5.10中array数组是过程sum_array 的局部变量,应该在过程栈帧中给数组分配空间,但该题中的数组array是在其他过程中定义的,仅将其数组首地址作为参数传递给过程sum_array(假定在在$a0中),因此,无需在其栈帧中给数组分配空间。此外,还有一个入口参数为num(假定在$a1中),有一个返回参数sum,被调用过程为compare。因此,其栈帧中除了保留所用的保存寄存器外,还必须保留返回地址,以免在调用过程compare时被覆盖。是否保存$fp要看具体情况,如果确保后面都不用到$fp,则可以不保存,但为了保证$fp的值不被后面的过程覆盖,通常情况下,应该保存$fp的值。

栈帧中要保存的信息只有返回地址$ra和帧指针$fp,其栈帧空间为4×2=8B。

汇编表示如下:

move $s0, $zero # sum=0

set-array: addi $sp, $sp, –8 # generate stack frame

sw $ra, 4($sp) # save $ra on stack

sw $fp, 0($sp) # save $fp on stack

addi $fp, $sp, 4 # set $fp

move $t2, $a0 # base address of array

move $t0, $a1 # $t0=num

move $t3, $zero # i=0

loop: slt $t1, $t3, $t0 # if i=num, $t1= 0

beq $t1, $zero, exit1 # if $t1= 0, jump to exit1

move $a0, $t0 # $a0=num

move $a1, $t3 # $a1=i

addi $a1, $a1, 1 # $a1=i+1

jal compare # call compare

beq $v0, $zero, else # if $v0 = 0, jump to else

sll $t1, $t3, 2 # i×4

add $t1, $t2, $t1 # $t1=array[i]

lw $t4, 0($t1) # load array[i]

add $s0, $s0, $t4 # sum+=array[i]

else:addi $t3, $t3, 1 # i=i+1

j loop

exit1: lw $ra, 4($sp) # restore $ra

lw $fp, 0($sp) # restore $fp

addi $sp, $sp, 8 # free stack frame

jr $ra # return to caller

(2)过程compare:入口参数为a和b,分别在$a0和$a1中。有一个返回参数,没有局部变量,是叶子过程,且过程体中没有用到任何保存寄存器,所以栈帧中不需要保留任何信息。

compare: move $v0, $zero # return 0

beq $a0, $a1, exit2 # if $a0=$a1, jump to exit2

slt $t1, $a0, $a1 # if $a0<$a1, $t1=1; if $a0>=$a1, $t1= 0

bne $t1, $zero, exit2 # if $a0<$a1, jump to exit2

ori $v0, $zero,1 # return 1

exit2: jr $ra

15.以下是一个计算阶乘的C语言递归过程,请按照MIPS过程调用协议写出该递归过程对应的MIPS汇编语言程序,要求目标代码尽量短(提示:乘法运算可用乘法指令“mul rd, rs, rt”来实现,功能为“rd←(rs) ×(rt)”)。

int fact ( int n)

{

if (n < 1)

return (1) ;

else return (n*fact (n-1) );

}

参考答案:

Fact:

addi $sp,$sp,-8

sw $ra,4($sp)

sw $a0,0($sp)

slti $t0,$a0,1

beq $t0,$zero,L1

addi $v0,$zero,1

addi $sp,$sp,8

jr $ra

L1:

addi $a0,$a0,-1

jal Fact

lw $a0,0($sp)

lw $ra,4($sp) addi $sp,$sp,8 mul $v0,$a0,$v0 jr $ra

计算机组织与体系结构实验报告

《计算机组织与体系结构》 实验报告 学号: XXX 姓名:XXX 班级:XXX 指导教师:XXX 时间: 2013年01月 中国矿业大学计算机学院

目录 一基本运算器实验 (2) 1、实验目的 (2) 2、实验设备 (2) 3、实验原理 (2) 4、实验步骤 (3) 5、实验结果 (5) 5、实验体会 (5) 二微程序控制实验 (6) 1、实验目的 (6) 2、实验设备 (6) 3、实验原理 (6) 4、实验步骤 (12) 5、实验体会 (13) 三CPU与简单模型机设计实验 (13) 1、实验目的 (13) 2、实验设备 (13) 3、实验原理 (13) 4、实验步骤 (18) 5、实验流图 (21) 6、实验体会 (25)

实验一基本运算器实验 1. 实验目的 (1) 了解运算器的组成结构。 (2) 掌握运算器的工作原理。 2. 实验设备 PC机一台,TD-CMA实验系统一套。 3.实验原理 本实验的原理如下图所示: 运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器A和暂存器B,三个部件同时接受来自A和B的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如ARM),各部件对操作数进行何种运算由控制信号S3…S0和CN来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为ALU的输出。如果是影响进位的运算,还将置进位标志FC,在运算结果输出前,置ALU零标志。ALU中所有模块集成在一片FPGA中。 逻辑运算部件由逻辑门构成,较为简单,而后面又有专门的算术运算部件设计实验,在此对这两个部件不再赘述。移位运算采用的是桶形移位器,一般采用交叉开关矩阵来实现,交叉开关的原理如图1-1-2所示。图中显示的是一个4X4的矩阵(系统中是一个8X8的矩阵)。每一个输入都通过开关与一个输出相连,把沿对角线的开关导通,就可实现移位功能,即: (1) 对于逻辑左移或逻辑右移功能,将一条对角线的开关导通,这将所有的输入位与所使用的输出分别相连,而没有同任何输入相连的则输出连接0。 (2) 对于循环右移功能,右移对角线同互补的左移对角线一起激活。例如,在4位矩阵中使用‘右1’和‘左3’对角线来实现右循环1位。 (3) 对于未连接的输出位,移位时使用符号扩展或是0填充,具体由相应的指令控制。使用另外的逻辑进行移位总量译码和符号判别。

计算机体系结构第五章练习题参考解答

第 五 章 5.34 在一个采用组相联映象方式的Cache 存储系统中,主存由B 0~B 7共8块组成,Cache 有2组,每组2块,每块大小为16B 。在一个程序执行过程中,访存的主存块地址流为:B 6,B 2,B 4,B 1,B 4,B 6,B 3,B 0,B 4,B 5,B 7,B 3。 (1)写出主存地址的格式,并标出各字段的长度。 (2)写出Cache 地址的格式,并标出各字段的长度。 (3)指出主存与Cache 之间各个块的映象关系。 (4)若Cache 的4个块号为C 0、C 1、C 2和C 3,列出程序执行过程中的Cache 块地址流。 (5)若采用FIFO 替换算法,计算Cache 的块命中率。 (6)若采用LRU 替换算法,计算Cache 的块命中率。 (7)若改为全相联映象方式,再做(5)和(6)。 (8)若在程序执行过程中,每从主存装入一块到Cache ,平均要对这个块访问16次,计算在这种情况下的Cache 命中率。 解:(1)(2)采用组相联映象时,主存和Cache 地址的格式分别为: 主存按Cache 的大小分区,现主存有8个块,Cache 有2×2=4个块,则主存分为8/4=2 个区,区号E 的长度为1位。又每区有2个组,则组号G 、g 的长度都为1位。而每组有2个块,则块号B 、b 的长度又都为1位。每块大小为16个存储字,故块内地址W 、w 的长度都为4位。 (3)根据组相联映象的规则,主存块0~7与Cache 块0~3之间的映象关系为:主存块0、1、4、5与Cache 块0、1之间全相联,主存块2、3、6、7与Cache 块2、3之间全相联。 (4)根据组相联映象的规则,该主存块地址流相应的一种Cache 块地址流如下表所示(组内替换算法为FIFO )。 时间: 1 2 3 4 5 6 7 8 9 10 11 12 主存块地址流: B 6 B 2 B 4 B 1 B 4 B 6 B 3 B 0 B 4 B 5 B 7 B 3 Cache 块地址流: C 2 C 3 C 0 C 1 C 0 C 2 C 2 C 0 C 0 C 0 C 3 C 2 (5)组内替换算法采用FIFO 时,Cache 块0~3的使用过程如下表所示。 时间: 1 2 3 4 5 6 7 8 9 10 11 12 主存块地址流: B 6 B 2 B 4 B 1 B 4 B 6 B 3 B 0 B 4 B 5 B 7 B 3 Cache 块0 Cache 块1 Cache 块2 Cache 块3 命中 命中 命中 可见命中三次,Cache 块命中率为H i = 3/12 = 0.25。 (6)组内替换算法采用LRU 时,Cache 块0~3的使用过程如下表所示。

计算机组成与系统结构

计算机组成与系统结构 1.冯·诺依曼计算机设计思想:依据存储程序,执行程序并实现控制。 2.早期计算机由运算器、控制器、存储器、输入设备和输出设备五大部分组成。 3.软件系统爆过两大部分:系统软件和应用软件。 4.计算机的层次结构分为:微程序或逻辑硬件、机器语言、操作系统、汇编语言、高级语言、应用语言。 5.计算机系统结构、组成与实现之间的区别与联系: ①计算机结构:也称为计算机体系结构,是一个系统在其所处环境中最高层次的概念;是对计算机系统中各机器级之间界面的划分和定义,以及对各级界面上、下的功能进行分配。 ②计算机组成:也常译为计算机组织或成为计算机原理、计算机组成原理。在计算机系统结构确定了分配给硬件子系统的功能及其概念之后,计算机组成的任务是研究硬件子系统各部分的内部结构和相互联系,以实现机器指令级的各级功能和特性。 ③计算机实现:指的是计算机组成的物理实现,主要研究个部件的物理结构,机器的制造技术和工艺等,包括处理机、主存等部件的物理结构,器件的集成度、速度和信号。器件、模块、插件、底板的划分与连接,专用器件的设计,电源、冷却、装配等技术。 6.Flynn分类法:按照计算机在执行程序时信息流的特征分为单指令单数据流计算机(SISD)、单指令多数据流计算机(SIMD)、多指令单数据流计算机(MISD)、多

指令多数据流计算机(MIMD). 7.加速比Sp=1/{(1-Fe)+Fe/Re},Fe为可改进比例,Re为部件加速比。 8.在计算机中有两种信息在流动,一种是控制流,即控制命令,由控制器产生并流向各个部件;另一种是数据流,它在计算机中被加工处理。 9.摩尔定律得以延续的理由:集成电路芯片的集成度每18个月翻一番。 10.冯·诺依曼计算机的执行过程:将要处理的问题用指令编程成程序,并将程序存放在存储器中,在控制器的控制下,从存储器中逐条取出指令并执行,通过执行程序最终解决计算机所要处理的问题。 11.数据编码的好处:用更少的数据表示更多的信息。 12.定点数:若约定小数点的位置固定不变,则成为定点数。定点数分为两种:定点整数(纯整数,小数点在最低有效数值位之后)和定点小数(纯小数,小数点最高有效数值位之前)。 13.浮点数:基数为2的数F的浮点表示为:F=M*2^E.其中M称为尾数,E称为阶码。尾数为带符号的纯小数,阶码为带符号的纯整数。 14.补码:非负数整数的补码为其原码,负数整数的补码在原码基础上取反加1. 15.n位补码表示的整数数值范围为-2^(n-1)~+(2^(n-1)-1),n位补码表示的小数数职的范围为-1~+(1-2^(-n+1))。 16.补码的特点: ①0的表示是唯一的。②变形码。③求补运算。 ④简化加减法。⑤算术或逻辑左移。⑥算术右移。 17.反码:正整数反码与原码相同。负整数反码即原码取反。 18.汉字编码分为三类:汉字输入编码、国际码和汉字内码以及汉字字模码。

计算机系统结构课后答案

1、数据结构和机器的数据表示之间是什么关系?确定和引入数据表示的基本原则是什么? 答:数据表示是能由硬件直接识别和引用的数据类型。数据结构反映各种数据元素或信息单元之间的结构关系。数据结构要通过软件映象变换成机器所具有的各种数据表示实现,所以数据表示是数据结构的组成元素。不同的数据表示可为数据结构的实现提供不同的支持,表现在实现效率和方便性不同。数据表示和数据结构是软件、硬件的交界面。 除基本数据表示不可少外,高级数据表示的引入遵循以下原则:(1)看系统的效率有否提高,是否养活了实现时间和存储空间。(2)看引入这种数据表示后,其通用性和利用率是否高。 2、标志符数据表示与描述符数据表示有何区别?描述符数据表示与向量数据表示对向量数据结构所提供的支持有什么不同? 答:标志符数据表示指将数据类型与数据本身直接联系在一起,让机器中每个数所都带类型樗位。其优点是:(1)简化了指令系统和程序设计;(2)简化了编译程序;(3)便于实现一致性校验;(4)能由硬件自动变换数据类型;(5)支持数据库系统的实现与数据类型无关;(6)为软件调试和应用软件开发提供支持。缺点是:(1)会增加程序所点的主存空间;(2)在微观上对机器的性能(运算速度)不利。 数据描述符指数据的描述与数据分开存放,描述所访问的数据是整块还是单个的,及访问该数据块或数据元素的地址住处它具备标志符数据表示的优点,并减少了标志符数据表示所占的空间,为向量和数组结构的实现提供支持。 数据描述符方法优于标志符数据表示,数据的描述与数据分开,描述所访问的数据是整块还是单个的,及访问该数据块或数据元素的地址信息,减少了樗符数据表示所占的窨。用描述符方法实现阵列数据的索引比用变址方法实现要方便,且便于检查出程序中的阵列越界错误。但它不能解决向量和数组的高速运算问题。而在有向量、数组数据表示的向量处理机上,硬件上设置有丰富的赂量或阵列运算指令,配有流水或阵列方式处理的高速运算器,不仅能快速形成向量、数组的元素地址,更重要的是便于实现把向量各元素成块预取到中央处理机,用一条向量、数组指令流水或同时对整个向量、数组高速处理.如让硬件越界判断与元素运算并行。这些比起用与向量、阵列无关的机器语言和数据表示串行实现要高效的多。 3、堆栈型机器与通用寄存器型机器的主要区别是什么?堆栈型机器系统结构为程序调用的哪些操作提供了支持? 答:有堆栈数据表示的机器称为堆栈机器。它与一般通用寄存器型机器不同。通用寄存器型

计算机组成与系统结构书本答案

C1: 以下哪些设备不属于冯?诺伊曼体系结构计算机的五大部件?寄存器, 缓冲器 适配器的作用是保证_____用计算机系统特性所要求的形式发送或接收信息。正确答案是:I/O设备 1966年,Flynn从计算机体系结构的并行性能出发,按照_____的不同组织方式,把计算机系统的结构分为SISD、SIMD、MISD和MIMD四类。指令流, 数据流 具有相同_____的计算机,可以采用不同的_____ 。:计算机体系结构,计算机组成 冯?诺伊曼型计算机的设计思想是_____。正确答案是:存储程序并按地址顺序执行 1958年开始出现的第二代计算机,使用_____作为电子器件。晶体管 在计算机系统的层次结构中,_____采用符号语言。高级语言级, 汇编语言级 世界上第一台通用电子数字计算机ENIAC使用_____作为电子器件电子管 在计算机系统的层次结构中,属于硬件级的是_____。微程序设计级, 机器语言级 C2: 为了提高浮点数的表示精度,当尾数不为_____时,通过修改阶码并移动小数点,使尾数域的最高有效位为_____,这称为浮点数的规格化表示。0,1 在我国使用的计算机汉字操作平台中,_____字符集未收录繁体汉字。GB2312 在定点_____运算中,为了判断溢出是否发生,可采用双符号位检测法。不论溢出与否,其_____符号位始终指示正确的符号。小数,最高, 整数,最高 在定点二进制运算器中,减法运算一般通过_____来实现。补码运算的二进制加法器 在奇偶校验中,只有当数据中包含有_____个1时, 偶校验位=_____。偶数,0, 奇数,1 奇偶校验无法检测_____个错误,更无法识别错误信息的_____。偶数,位置, 偶数,内容在PC机中,若用扩展ASCII码、Unicode UCS-2和UCS-4方法表示一个字符,则三者之间的差异为:扩展ASCII码用_____位表示,Unicode UCS-2用_____位表示,Unicode UCS-4用_____位表示。8,16,32 C3: 相联存储器是以______来访问存储器的。关键字, 内容 Cache由高速的______组成。SRAM Cache存储器在产生替换时,可以采用以下替换算法:______。LFU算法, LRU算法, 随机替换 Cache的功能由______实现,因而对程序员是透明的。硬件 MOS半导体存储器中,______的外围电路简单,速度______,但其使用的器件多,集成度不高。SRAM,快 EPROM是指______。光擦可编程只读存储器 虚拟地址空间的大小实际上受到______容量的限制。辅助存储器 相联存储器是以______来访问存储器的。关键字, 内容 从CPU来看,增加Cache的目的,就是在性能上使______的平均读出时间尽可能接近Cache 的读出时间。主存, 内存 虚拟地址由______生成。编译程序 MOS半导体存储器中,______可大幅度提高集成度,但由于______操作,外围电路复杂,速度慢。DRAM,刷新 虚拟存储器可看作是一个容量非常大的______存储器,有了它,用户无需考虑所编程序在

计算机组成与系统结构常见选择题

一、选择题(50分,每题2分,正确答案可能不只一个,可单选或复选) 1.(CPU周期、机器周期)是内存读取一条指令字的最短时间。 2.(多线程、多核)技术体现了计算机并行处理中的空间并行。 3.(冯诺伊曼、存储程序)体系结构的计算机把程序及其操作数据一同存储在存储器里。 4.(计算机体系结构)是机器语言程序员所看到的传统机器级所具有的属性,其实质是确定计算机系统中软硬件的界面。 5.(控制器)的基本任务是按照程序所排的指令序列,从存储器取出指令操作码到控制器中,对指令操作码译码分析,执行指令操作。 6.(流水线)技术体现了计算机并行处理中的时间并行。 7.(数据流)是执行周期中从内存流向运算器的信息流。 8.(指令周期)是取出并执行一条指令的时间。 年开始出现的第二代计算机,使用(晶体管)作为电子器件。 年代中期开始出现的第三代计算机,使用(小规模集成电路、中规模集成电路)作为电子器件。 年代开始出现的第四代计算机,使用(大规模集成电路、超大规模集成电路)作为电子器件。 存储器在产生替换时,可以采用以下替换算法:(LFU算法、LRU算法、随机替换)。 的功能由(硬件)实现,因而对程序员是透明的。 是介于CPU和(主存、内存)之间的小容量存储器,能高速地向CPU提供指令和数据,从而加快程序的执行速度。 由高速的(SRAM)组成。 的基本功能包括(程序控制、操作控制、时间控制、数据加工)。的控制方式通常分为:(同步控制方式、异步控制方式、联合控制方式)反映了时序信号的定时方式。 的联合控制方式的设计思想是:(在功能部件内部采用同步控制方式、在功能部件之间采用异步控制方式、在硬件实现允许的情况下,尽可能多地采用异步控制方式)。 的同步控制方式有时又称为(固定时序控制方式、无应答控制方式)。 的异步控制方式有时又称为(可变时序控制方式、应答控制方式)。

计算机系统结构_第五章练习 答案

第五章练习 1、描述计算机系统流水线的性能指标有哪些?其定义和定量表达式是什么? 指标主要有吞吐率、加速比、效率。 (1)吞吐率:在单位时间内流水线所完成的任务数量或输出的结果数量。 基本公式:TP=n/Tk,其中,n是任务数,Tk是处理完成n个任务所用的时间。 各个功能段执行时间均相等,输入连续n个任务的一条k段线性流水线的实际吞吐率为:TP=n/[(k+n-1) ?t] (2)加速比:完成一批任务,不使用流水线所用的时间与使用流水线所用的时间之比。 基本公式:S=T0/Tk,其中,T0为不使用流水线所用的时间,Tk为使用流水 线的执行时间。 各个功能段执行时间均相等的一条K段流水线完成n个连续任务时的实际加速比为:s=k*n*?t/[(k+n-1) ?t]=k*n/( k+n-1). (3)效率:指流水线的设备利用率。 在时空图上,流水线的效率定义为n个任务占用的时空区与k个功能段总的时空区之比。即:E=T0/(k*Tk) 各个功能段执行时间均相等,输入连续n个任务的一条k段线性流水线的效率为:E=n/(k+n-1) 2、假设某个流水线由4个功能部件组成,每个功能部件的执行时间都为?t。当 连续输入10个数据后,停顿5?t,又连续输入10个数据,如此重复。 画出时空图,计算流水线的实际吞吐率,加速比和效率。 总时间:Tk=[(4+10-1)+2] *?t*n =15n*?t 实际吞吐率:TP=N/Tk=10n/(15n*?t)=2/(3?t) 不使用流水线所用的时间为T0=4*N*?t =40n*?t 加速比:S=T0/Tk=2.67 效率:E=T0/(k*Tk)=0.67

(完整版)计算机系统结构试题及答案

计算机系统结构复习题 单选及填空: 计算机系统设计的主要方法 1、由上往下的设计(top-down) 2、由下往上的设计(bottom-up) 3、从中间开始(middle-out) Flynn分类法把计算机系统的结构分为以下四类: (1)单指令流单数据流 (2)单指令流多数据流 (3)多指令流单数据流 (4) 多指令流多数据流 堆栈型机器:CPU 中存储操作数的单元是堆栈的机器。 累加器型机器:CPU 中存储操作数的单元是累加器的机器。 通用寄存器型机器:CPU 中存储操作数的单元是通用寄存器的机器。 名词解释: 虚拟机:用软件实现的机器叫做虚拟机,但虚拟机不一定完全由软件实现,有些操作可以由硬件或固件(固件是指具有软件功能的固件)实现。 系列机:由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。 兼容机:它是指由不同公司厂家生产的具有相同系统结构的计算机。 流水线技术:将一个重复的时序过程,分解成为若干个子过程,而每一个子过程都可有效地在其专用功能段上与其它子过程同时执行。 单功能流水线:指流水线的各段之间的连接固定不变、只能完成一种固定功能的流水线。 多功能流水线:指各段可以进行不同的连接,以实现不同的功能的流水线。 顺序流水线:流水线输出端任务流出的顺序与输入端任务流入的顺序完全相同。 乱序流水线:流水线输出端任务流出的顺序与输入端任务流入的顺序可以不同,允许后进入流水线的任务先完成。这种流水线又称为无序流水线、错序流水线、异步流水线。 吞吐率:在单位时间内流水线所完成的任务数量或输出结果的数量。 指令的动态调度:

是指在保持数据流和异常行为的情况下,通过硬件对指令执行顺序进行重新安排,以提高流水线的利用率且减少停顿现象。是由硬件在程序实际运行时实施的。 指令的静态调度: 是指依靠编译器对代码进行静态调度,以减少相关和冲突。它不是在程序执行的过程中、而是在编译期间进行代码调度和优化的。 超标量: 一种多指令流出技术。它在每个时钟周期流出的指令条数不固定,依代码的具体情况而定,但有个上限。 超流水:在一个时钟周期内分时流出多条指令。 多级存储层次: 采用不同的技术实现的存储器,处在离CPU不同距离的层次上,各存储器之间一般满足包容关系,即任何一层存储器中的内容都是其下一层(离CPU更远的一层)存储器中内容的子集。目标是达到离CPU最近的存储器的速度,最远的存储器的容量。 写直达法: 在执行写操作时,不仅把信息写入Cache中相应的块,而且也写入下一级存储器中相应的块。写回法: 只把信息写入Cache中相应块,该块只有被替换时,才被写回主存。 集中式共享多处理机: 也称为对称式共享存储器多处理SMP。它一般由几十个处理器构成,各处理器共享一个集中式的物理存储器,这个主存相对于各处理器的关系是对称的, 分布式共享多处理机: 它的共享存储器分布在各台处理机中,每台处理机都带有自己的本地存储器,组成一个“处理机-存储器”单元。但是这些分布在各台处理机中的实际存储器又合在一起统一编址,在逻辑上组成一个共享存储器。这些处理机存储器单元通过互连网络连接在一起,每台处理机除了能访问本地存储器外,还能通过互连网络直接访问在其他处理机存储器单元中的“远程存储器”。 多Cache一致性: 多处理机中,当共享数据进入Cache,就可能出现多个处理器的Cache中都有同一存储器块的副本,要保证多个副本数据是一致的。 写作废协议: 在处理器对某个数据项进行写入之前,它拥有对该数据项的唯一的访问权 。 写更新协议: 当一个处理器对某数据项进行写入时,它把该新数据广播给所有其它Cache。这些Cache用该新数据对其中的副本进行更新。 机群:是一种价格低廉、易于构建、可扩放性极强的并行计算机系统。它由多台同构或异构

计算机组成与系统结构课后答案版全(清华大学袁春风主编)

第 1 章习题答案 5.若有两个基准测试程序P1和P2在机器M1和M2上运行,假定M1和M2的价格分别是5000元和8000 请回答下列问题: (1)对于P1,哪台机器的速度快?快多少?对于P2呢? (2)在M1上执行P1和P2的速度分别是多少MIPS?在M2上的执行速度又各是多少?从执行速度来看,对于P2,哪台机器的速度快?快多少? (3)假定M1和M2的时钟频率各是800MHz和1.2GHz,则在M1和M2上执行P1时的平均时钟周期数CPI各是多少? (4)如果某个用户需要大量使用程序P1,并且该用户主要关心系统的响应时间而不是吞吐率,那么,该用户需要大批购进机器时,应该选择M1还是M2?为什么?(提示:从性价比上考虑)(5)如果另一个用户也需要购进大批机器,但该用户使用P1和P2一样多,主要关心的也是响应时间,那么,应该选择M1还是M2?为什么? 参考答案: (1)对于P1,M2比M1快一倍;对于P2,M1比M2快一倍。 (2)对于M1,P1的速度为:200M/10=20MIPS;P2为300k/0.003=100MIPS。 对于M2,P1的速度为:150M/5=30MIPS;P2为420k/0.006=70MIPS。 从执行速度来看,对于P2,因为100/70=1.43倍,所以M1比M2快0.43倍。 (3)在M1上执行P1时的平均时钟周期数CPI为:10×800M/(200×106)=40。 在M2上执行P1时的平均时钟周期数CPI为:5×1.2G/(150×106)=40。 (4)考虑运行P1时M1和M2的性价比,因为该用户主要关心系统的响应时间,所以性价比中的性能应考虑执行时间,其性能为执行时间的倒数。故性价比R为: R=1/(执行时间×价格) R越大说明性价比越高,也即,“执行时间×价格”的值越小,则性价比越高。 因为10×5000 > 5×8000,所以,M2的性价比高。应选择M2。 (5)P1和P2需要同等考虑,性能有多种方式:执行时间总和、算术平均、几何平均。 若用算术平均方式,则:因为(10+0.003)/2×5000 > (5+0.006)/2×8000,所以M2的性价比高,应选择M2。 若用几何平均方式,则:因为sqrt(10×0.003) ×5000 < sqrt(5×0.006) ×8000, 所以M1的性价比高,应选择M1。 6.若机器M1和M2具有相同的指令集,其时钟频率分别为1GHz和1.5GHz。在指令集中有五种不同类型的指令A~E。下表给出了在M1和M2上每类指令的平均时钟周期数CPI。

计算机系统结构 课后习题答案(第2版)

习题一 1、解释下列术语 计算机系统的外特性:通常所讲的计算机系统结构的外特性是指机器语言程序员或编译程序编写者所看到的外特性,即由他们所看到的计算机的基本属性(概念性结构和功能特性)。 计算机系统的内特性:计算机系统的设计人员所看到的基本属性,本质上是为了将有关软件人员的基本属性加以逻辑实现的基本属性。 模拟:模拟方法是指用软件方法在一台现有的计算机上实现另一台计算机的指令系统。 可移植性:在新型号机出台后,原来开发的软件仍能继续在升级换代的新型号机器上使用,这就要求软件具有可兼容性,即可移植性。可兼容性是指一个软件可不经修改或只需少量修改,便可由一台机器移植到另一台机器上运行,即同一软件可应用于不同环境。 Amdahl定律:系统中对于某一部件采用某种更快的执行方式所能获得的系统性能改进程度,取决于这种执行方式被使用的频度或占总执行时间的比例。 虚拟机(Virtual Machine):指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。 6、 7、假定求浮点数平方根的操作在某台机器上的一个基准测试程序中占总执行时间的20%,为了增强该操作的性能,可采用两种不同的方法:一种是增加专门的硬件,可使求浮点数平方根操作的速度提高为原来的20倍;另一种方法是提高所有浮点运算指令的速度,使其为原来的2倍,而浮点运算指令的执行时间在总执行时间中占30%。试比较这两种方法哪一种更好些。 答:增加硬件的方法的加速比Sp1=1.23, 另一种方法的加速比Sp2= 1.176,经计算可知Sp1=方法更好些。 Sp2>Sp2第一种 9、假设高速缓存Cache的工作速度为主存的5倍,且Cache被访问命中的概率 T=为90%,则采用Cache能使整个存储系统获得多高的加速比?答: 加速比

计算机系统结构 第一章自考练习题答案教学内容

第一章计算机系统结构的基本概念 历年真题精选 1. 下列对系统程序员不透明的是()。 A. 乘法器 B. 先行进位链 C. 指令缓冲器 D. 条件码寄存器2.“从中间开始”设计的“中间”目前多数是在( D )。 A. 微程序机器级与汇编语言机器级之间 B. 操作系统机器级与汇编语言机器级之间 C. 传统机器语言机器级与微程序机器级之间 D. 传统机器语言机器级与操作系统机器级之间 3. 开发计算机系统结构并行性的主要技术途径有时间重叠、(资源重复)和(资源 共享)。 4. 计算机系统弗林分类法,把计算机系统分成单指令流单数据流(SISD)、单指令流多数 据流(SIMD)、(多指令流单数据流(MISD))和(多指令流多数据流(MIMD))四大类。 5. 设计指令系统时,以乘法运算为例,简述系统结构设计、计算机组成设计、计算机实现 各应考虑的问题。(P4) 6. 实现软件移植的途径有哪些?各受什么限制?(P14) 同步强化练习 一.单项选择题。 1. 实现汇编语言源程序变换成机器语言目标程序是由( C )。 A. 编译程序翻译 B. 编译程序解释 C. 汇编程序翻译 D. 汇编程序解释

2. 系列机软件应做到( B ) A. 向前兼容,并向下兼容 B. 向后兼容,力争向上兼容 C. 向前兼容,并向上兼容 D. 向后兼容,力争向下兼容 3. 在计算机系统多级层次结构中,机器级由低到高,相对顺序正确的应当是( B )。 A. 传统机器语言、汇编语言、操作系统 B. 微程序、传统机器语言、高级语言 C. 高级语言、汇编语言、传统机器语言 D. 传统机器语言、应用语言、高级语言 4. 可以直接执行微指令的是( C )。 A. 编译程序 B. 微程序 C. 硬件 D. 汇编程序 5. 计算机系统结构不包括( A )。 A. 主存速度 B. 数据表示 C. 机器工作状态 D. 信息保护 6. 对计算机系统结构透明的是()。 A. 是否使用通道型I/0处理机 B. 虚拟存储器 C. 字符行运算指令 D. VLSI技术 7. 在主存设计上,属计算机系统结构考虑的应是( C )。 A. 频宽的确定 B. 多体交叉还是单体 C. 容量和编址单位 D. 用MOS还是TTL 8. 计算机组成设计不考虑( B )。 A. 缓冲技术 B. 功能部件的集成度 C. 专用部件设置 D. 控制机构的组成 9. 下列说法中不正确的是( D ) A. 硬件的生产费用比软件的生产费用高 B.软件设计费用比软件重复生产费用高 C. 硬件功能只需实现一次而软件功能可能要多次重复实现 D. 硬件实际费用比软件设计费用低

《计算机系统结构》与参考答案

2.以下各类中断中,属于自愿中断的是 C. A. 外部中断 B. I/O中断 C. 执行“访管”指令 D. 机器校验中断 3.高速外部设备磁盘机适合连接于 C. A. 选择通道或字节多路通道 B. 数组多路通道或字节多路通道 C.数组多路通道或选择通道 D.任意一种通道 4.页式虚拟存储器页表的作用是 A . A. 反映虚页在主存的存储情况 B.仅反映虚页是否调入主存 C. 反映主存实页与Cache 的对应关系 D. 反映虚页在辅存的存储情况5.软件和硬件的功能在逻辑上是C的 . A.固件优于软件 B.不等价 C.等价 D.软件优于固件 6.计算机中最优化的操作码编码方法是D. A.BCD 码 B.ASCII码 C.扩展操作码 D.哈夫曼编码 7.从计算机系统执行程序的角度看,并行性等级由低到高分为四级A. A .指令内部——指令之间——进程之间——程序之间 B .指令之间——指令内部——进程之间——程序之间 C.进程之间——指令之间——指令内部——程序之间 D .程序之间——进程之间——指令之间——指令内部 8.计算机系统多级层次结构中,操作系统机器级的直接上层是D. A .传统机器级 B .高级语言机器 C.应用语言机器级D.汇编语言机器级 9.全相联地址映像是指A. A. 任何虚页都可装入主存中任何实页的位置 B.一个虚页只装进固定的主存实页位置 C.组之间是固定的,而组内任何虚页可以装入任何实页位置 D.组间可任意装入,组内是固定装入 10.对于同一系列机,必须保证软件能够C. A .向前兼容,并向上兼容 B .向前兼容,并向下兼容C.向后兼容,力争向上兼容D .向后兼容,力争向下兼容11.设有 16 个处理单元的并行处理机系统, 采用共享主存的方式. 若同时存取16 个数据 , 为避免存储器访问冲突, 共享主存的多体数量应该为C才合理 . A. 15 B. 16 C. 17 D. 19 12.软件兼容的根本特征是C. A.向前兼容 B.向后兼容 C. 向上兼容 D. 向下兼容 13.在下列机器中,能够实现软件兼容的机器是 B. A.完全不同种类的机型 B.系统结构相同的机器 C. 宿主机和目标机 D.虚拟机 14.输入输出系统硬件的功能对C是透明的。 A. 操作系统程序员 B. 所有类别的程序员 C. 应用程序员 D. 系统结构设计师 15.在下列各项选择中,对于机器( 汇编 ) 语言程序员透明的是 D. A.通用寄存器 B. 条件码 C.中断字 D.主存储器地址寄存器 一、单项选择题 1.在流水机器中,全局性相关是指 B. A.指令相关 B. 由条件转移指令引起的相关 C “先读后写”相关 D.“先写后读”相关 2.以下不属于多处理机操作系统类型的是A. A .Windows 操作系统B.主从型操作系 C.浮动型操作系统 D .各自独立型操作系统 3.下列不是数据流计算特点的是D. A. 设置状态 B.没有指令计数器 C.没有变量的概念 D.操作结果不产生副作用 4.若输入流水线的指令既无局部性相关,也不存在全局性相关,则B. A. 可获得高的吞吐率和效率 B.出现瓶颈 C.流水线的效率和吞吐率恶化 D.可靠性提高 5.消除“一次重叠”中的“指令相关”最好方法是B. A. 不准修改指令 B.设置相关专用通路 C.推后分析下条指令 D.推后执行下条指令 6.流水线的技术指标不包括A. A. 数据宽度 B.吞吐率 C.加速比 D.效率 7.按照弗林对处理机并行性定义的分类原则,阵列机ILLIAC IV属于B. A.SISD B.SIMD C.MISD D.MIMD 8.设 8 个处理器编号分别为0,1, 2,?,7 用 Cube0 互联函数时,第7 号处理机可以与第D号处理机相联 . A. 0 B. 2 C. 4 D. 6 9.多端口存储器适合于连接 B. A .松耦合多处理机B.紧耦合多处理机C.机数很多的多处理机 D .机数可变的多处理机 10.以下不属于堆栈型替换算法的是A. A .先进先出法B.近期最久未用过法 C.近期最少使用法D.页面失效频率法 11.解决主存空间数相关的办法是C. A.基址值一次相关直接通路法 B.基址值二次相关直接通路法 C.通用寄存器组相关专用通路相关法 D. 推后读法 12. 一般来说 , 以下替换算法中 , 效果最优的替换算法是C. A. LRU 替换算法 B. FIFO 替换算法 C. OPT 替换算法 D. RAND替换算法

计算机组织与系统结构 (A-1 卷)

考试科目名称 计算机组织与系统结构 (A-1卷)2007——2008学年第 2 学期 教师 袁春风/窦万春考试方式:闭卷系(专业) 计算机科学与技术年级 2006班级 学号 姓名 成绩 题号一二三四五六 分数 一、填空题(本大题共15小题,每空1分,共20分) 得分 1. 二进制指令代码的符号化表示被称为汇编语言源程序。必须通过相应的翻译程序把它转 换为机器语言程序才能被计算机执行。 2. 通常用一个寄存器来存放当前执行指令的地址,MIPS结构中将该寄存器简写为PC。由于历史的原 因,PC寄存器通常被称为程序计数器(或Program Counter)。 3. 在MIPS中,分支指令的转移目标地址是由分支指令的下条指令地址加上一个位移量决定的。通常 把这种方式称为(PC)相对寻址方式。 4. 假定寄存器$s1中存放二进制信息为0000 0000 0000 0000 0000 0000 1101 1000,则在屏幕上用 16进制显示为0x 0000 00D8。若该信息是一个无符号整数,则表示的值为 216。 5. 过程调用时,涉及到调用过程和被调用过程之间的数据交换和程序切换,所以要有相应的存储空间 来存放调用参数、返回数据和返回地址等信息。这种用于过程调用的存储空间被称为堆栈Stack (或栈帧Stack Frame)。 6. 衡量CPU性能好坏的一个重要指标是CPU执行时间。它与程序包含的指令条数和每条指令的平均 时钟数以及时钟周期有关。通常用英文缩写CPI 来表示每条指令的平均时钟数。有时也用基准程序来测试处理器的性能,“基准程序”对应的英文单词是Benchmark。 7. 进行基本加/减等算术运算和与/或/非等逻辑运算的部件被称为算术逻辑部件。用英文缩写表示为 ALU。 8. 由于Cache数据是主存数据的副本,所以Cache和主存之间存在一致性问题,可以采用两种不同的 写策略来解决。这两种写策略是Write Back(或写回法/一次性写)和Write Through(或写通过法)。 9. 在流水线中,如果多条指令同时需要用到同一个功能部件,就发生了流水线冒险,会引起流水线的 阻塞。通常把这种流水线冒险称为结构(或资源冲突)冒险。

《_计算机组成与系统结构》考试试卷

学试卷 院(系、部) 专业 班级 姓名 学号 …… .… … … … … …… … … … … .密… … … … … … … … … …… … … … … 封 … … … … …… . . …… … … … ……. . 线… … … … … … … … … … … … … … . . 计算机组成与系统结构考试试卷 一. 填空题 (填空每空1分,共10分;选择填空每空2分,共20分) 1.计算机系统中的存贮器系统是指___D ___。 A RAM 存贮器 B ROM 存贮器 C 主存贮器 D cache 、主存贮器和外存贮器 2.某机字长32位,其中1位符号位,31位表示尾数。若用定点小数表示,则最大正小数为___B ___。 A +(1 – 2-32) B +(1 – 2-31) C 2-32 D 2-31 3.算术 / 逻辑运算单元74181ALU 可完成___C ___。 A 16种算术运算功能 B 16种逻辑运算功能 C 16种算术运算功能和16种逻辑运算功能 D 4位乘法运算和除法运算功能 4.存储单元是指___B ___。 A 存放一个二进制信息位的存贮元 B 存放一个机器字的所有存贮元集合 C 存放一个字节的所有存贮元集合 D 存放两个字节的所有存贮元集合; 5.相联存贮器是按___C ___进行寻址的存贮器。 A 地址方式 B 堆栈方式 C 内容指定方式 D 地址方式与堆栈方式 6.变址寻址方式中,操作数的有效地址等于___C ___。 A 基值寄存器内容加上形式地址(位移量) B 堆栈指示器内容加上形式地址(位移量) C 变址寄存器内容加上形式地址(位移量) D 程序记数器内容加上形式地址(位移量) 7.以下叙述中正确描述的句子是:___D ___。 A 同一个CPU 周期中,可以并行执行的微操作叫相容性微操作 B 同一个CPU 周期中,不可以并行执行的微操作叫相容性微操作 C 同一个CPU 周期中,可以并行执行的微操作叫相斥性微操作 D 同一个CPU 周期中,不可以并行执行的微操作叫相斥性微操作 8.计算机使用总线结构的主要优点是便于实现积木化,同时___C ___。 A 减少了信息传输量 B 提高了信息传输的速度 C 减少了信息传输线的条数

计算机组成与系统结构

1:__计算机体系结构__是机器语言程序员所看到的传统机器级所具有的属性,其实质是确定计算机系统中软硬件的界面。 2:虚拟存储器可看作是一个容量非常大的___逻辑___存储器,有了它,用户无需考虑所编程序在__主存__中是否放得下或放在什么位置等问题。 3:指令的跳跃寻址方式,是指下一条指令的地址由本条指令直接给出,因此,_程序计数器_的内容必须相应改变,以便及时跟踪新的指令地址。 4:指令格式中的地址码字段,通常用来指定参与操作的___操作数___或其地址。 5:在定点__小数、整数___运算中,为了判断溢出是否发生,可采用双符号位检测法。不论溢出与否,其__最高__符号位始终指示正确的符号。 6:1966年,M.J.Flynn从计算机体系结构的并行性能出发,按照__指令流, 数据流__的不同组织方式,把计算机系统的结构分为SISD、SIMD、MISD和MIMD四类。 7:具有相同___计算机体系结构__的计算机,可以采用不同的__计算机组成___。 8:MOS半导体存储器中,__SRAM _的外围电路简单,速度___快___,但其使用的器件多,集成度不高。 9:Cache的功能由___硬件___实现,因而对程序员是透明的。 10:冯?诺伊曼型计算机的设计思想是__存储程序并按地址顺序执行___。 11:到目前为止,使用最为广泛的计算机形态是__嵌入式计算机___。 12:从CPU来看,增加Cache的目的,就是在性能上使__主存, 内存__的平均读出时间尽可能接近Cache的读出时间。 13:在主存与Cache间建立地址映射,有几种不同的地址映射方式,它们是_全相联映射方式, 直接映射方式, 组相联映射方式_。 14:部分在计算机系统的层次结构中,属于硬件级的是__微程序设计级, 机器语言级_。 15:在计算机系统的层次结构中,属于软件级的是_高级语言级, 汇编语言级_。 16:在计算机系统的层次结构中,___微程序设计级, 操作系统级, 机器语言级__采用二进制数语言。 17:一种__计算机组成___可以采用多种不同的__计算机实现___。 18:世界上第一台通用电子数字计算机ENIAC使用_电子管_作为电子器件。 19:MOS半导体存储器中,__ DRAM __可大幅度提高集成度,但由于__刷新__操作,外围电路复杂,速度慢。 20:指令格式就是___指令字__用二进制代码表示的结构形式。 1:当CPU和主存进行信息交换,即CPU___向主存存入数据, 从主存读出数据, 从主存读出指令___时,都要使用地址寄存器和数据寄存器。 2:取出和执行任何一条指令所需的最短时间为_2_个CPU周期。 3:1997年,Intel在其Pentium MMX CPU中集成了MMX技术,使用了8个___64___位宽的MMX寄存器。 4:当代总线是一些标准总线,追求与___技术, 结构, CPU, 厂家___无关的开发标准。 5:在CPU中,运算器通常由___算术逻辑单元, 累加寄存器, 数据寄存器, 状态条件寄存器___组成。 6:在对流水CPU基本概念的描述中,正确的是__流水CPU是一种非常经济而实用的时间并行技术____。 7:相对于硬连线控制器,微程序控制器的优点在于__结构比较规整, 复杂性和非标准化程度较低, 增加或修改指令较为容易____。 8:在CPU中,数据寄存器用来暂时存放__由主存读出的一条指令, 由主存读出的一个数据字, 向主存存入的一条指令, 向主存存入的一个数据字____。 9:以下句子中,正确的是__各条指令的取指阶段所用的CPU周期是完全相同的。由于各条指令的功能不同,指令的执行阶段所用的CPU周期是各不相同的____。 10:在CPU中,程序计数器用来保存___下一条指令的地址___。 11:在对RISC机器基本概念的描述中,正确的是___ RISC机器一定是流水CPU ___。 12:在一个计算机系统中,算术流水线是指运算操作步骤的并行,是__部件___级流水线。 13:流水CPU通常由_指令部件, 指令队列, 执行部件_等几个部分组成,这几个功能部件可以组成一个多级流水线。14:奔腾CPU的大多数简单指令用硬连线控制实现,在1个时钟周期内执行完毕。而对于用微程序实现的指令,也在__2, 3__个时钟周期内执行完毕。 15:第一台RISC计算机于___1981__年在美国加州大学伯克利分校问世。

计算机组织与系统结构第六章习题答案

习题 1.给出以下概念的解释说明。 指令周期(Instruction Cycle)机器周期(Machine Cycle) 同步系统(Synchronous system)时序信号(Timing signal) 控制单元(Control Unit, CU)执行部件(Execute Unit,EU) 组合逻辑元件(Combinational logic element)或操作元件(Operate element) 时序逻辑元件(Sequential logic circuit)或状态元件(State element) 多路选择器(Multiplexor)扩展器(Extension unit) “零”扩展(0- extend)“符号”扩展(Sign extend) 算术逻辑部件ALU(Arithmetic Logic Unit)加法器(Adder) CPU总线(CPU Bus)寄存器堆(Register file) 定时方式(Clocking methodology)边沿触发(Edge-triggered) 寄存器写信号(Register Write)指令存储器(Instruction Memory)数据存储器(Data Memory)程序计数器(Program Counter) 指令寄存器(Instruction Register)指令译码器(Instruction Decoder)时钟周期(Clock Cycle)主频(CPU Clock Rate / Frequency 转移目标地址(Branch target address)控制信号(Control signal) 微程序控制器(Microprogrammed control)硬布线控制器(Hardwared control)控制存储器(Control Storage,控存CS)微代码(Microcode) 微指令(Microinstruction)微程序(Microprogram) 固件(Firmware)中断过程(Interrupt Processing) 异常(Exception)故障(fault) 自陷(Trap) 终止(Abort) 中断(Interrupt)中断服务程序(Interrupt Handler)中断允许位(Interrupt Enable Bit)关中断(Interrupt OFF) 开中断(Interrupt ON)中断响应(Interrupt Response) 向量中断(Vector Interrupt)中断向量(Interrupt vector) 中断向量表(Interrupt vector table)向量地址(vector Address) 中断类型号(Interrupt number) 2. 简单回答下列问题。 (1)CPU的基本组成和基本功能各是什么? (2)取指令部件的功能是什么? (3)控制器的功能是什么? (4)为什么对存储器按异步方式进行读写时需要WMFC信号?按同步方式访问存储器时,CPU如何实现存储器读写? (5)单周期处理器的CPI是多少?时钟周期如何确定?为什么单周期处理器的性能差?元件在一个指令周期内能否被重复使用?为什么? ? 156 ?

相关文档
相关文档 最新文档