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

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

第 3 章习题答案

2(4)高级语言中的运算和机器语言(即指令)中的运算是什么关系?假定某一个高级语言源程序P中有乘、除运算,但机器M中不提供乘、除运算指令,则程序P能否在机器M上运行?为什么?

参考答案:(略)

3.考虑以下C语言程序代码:

int func1(unsigned word)

{

return (int) (( word <<24) >> 24);

}

int func2(unsigned word)

{

return ( (int) word <<24 ) >> 24;

}

假设在一个32位机器上执行这些函数,该机器使用二进制补码表示带符号整数。无符号数采用逻辑移位,带符号整数采用算术移位。请填写下表,并说明函数func1和func2的功能。

函数func1的功能是把无符号数高24位清零(左移24位再逻辑右移24位),结果一定是正的有符号数;而函数func2的功能是把无符号数的高24位都变成和第25位一样,因为左移24位后进行算术右移,高24位补符号位(即第25位)。

4.填写下表,注意对比无符号数和带符号整数的乘法结果,以及截断操作前、后的结果。

5.以下是两段C语言代码,函数arith( )是直接用C语言写的,而optarith( )是对arith( )函数以某个确定的M和N编译生成的机器代码反编译生成的。根据optarith( ),可以推断函数arith( ) 中M和N的值各是多少?

#define M

#define N

int arith (int x, int y)

{

int result = 0 ;

result = x*M + y/N;

return result;

}

int optarith ( int x, int y)

{

i nt t = x;

x << = 4;

x - = t;

i f ( y < 0 ) y += 3;

y>>2;

r eturn x+y;

参考答案:

可以看出x*M和“int t = x; x << = 4; x-=t;”三句对应,这些语句实现了x乘15的功能(左移4位相当于乘以16,然后再减1),因此,M等于15;

y/N与“if ( y < 0 ) y += 3; y>>2;”两句对应,功能主要由第二句“y右移2位”实现,它实现了y除以4的功能,因此N是4。而第一句“if ( y < 0 ) y += 3;”主要用于对y=–1时进行调整,若不调整,则–1>>2=–1而–1/4=0,两者不等;调整后–1+3=2,2>>2=0,两者相等。

思考:能否把if ( y < 0 ) y += 3; 改成if ( y < 0 ) y += 2; ?

不能!因为y = - 4时不正确。

6.设A4~A1和B4~B1分别是四位加法器的两组输入,C0为低位来的进位。当加法器分别采用串行进位和先行进位时,写出四个进位C4 ~C1的逻辑表达式。

参考答案:

串行进位:

C1 = X1C0+Y1C0 + X1 Y1

C2 = X2C1+Y2C1 + X2 Y2

C3 = X3C2+Y3C2 + X3 Y3

C4 = X4C3+Y4C3 + X4 Y4

并行进位:

C1 = X1Y1 + (X1+Y1)C0

C2 = X2Y2 + (X2 +Y2) X1Y1 + (X2+Y2) (X1+Y1)C0

C3 = X3Y3 + (X3 + Y3) X2Y2 + (X3 + Y3) (X2 + Y2) X1Y1 + (X3 + Y3) (X2 + Y2)(X1 + Y1)C0

C4=X4Y4+(X4+Y4)X3Y3+(X4+Y4)(X3+Y3)X2Y2+(X4+Y4)(X3+Y3)(X2+Y2)X1Y1+(X4+Y4)(X3+Y3)

(X2+Y2)(X1+Y1)C0

7.用SN74181和SN74182器件设计一个16位先行进位补码加/减运算器,画出运算器的逻辑框图,并给出零标志、进位标志、溢出标志、符号标志的生成电路。

参考答案(图略):

逻辑框图参见教材中的图3.15和图3.16,将两个图结合起来即可,也即只要将图3.15中的B输入端的每一位B i取反,得到B i,和原码B i一起送到一个二路选择器,由进位C0作为选择控制信号。当C0为1时做减法,此时,选择将B i作为SN74181的B输入端;否则,当C0为1时,做加法。

零标志ZF、进位标志CF、溢出标志OF、符号标志SF的逻辑电路根据以下逻辑表达式画出即可。

ZF=F15+F14+F13+F12+F11+F10+F9+F8+F7+F6+F5+F4+F3+F2+F1+F0

CF=C16

OF= C0(A15B15F15 + A15B15F15)+ C0(A15B15F15 + A15B15F15)

SF= F15

8.用SN74181和SN74182器件设计一个32位的ALU,要求采用两级先行进位结构。

(1)写出所需的SN74181和SN74182芯片数。

(2)画出32位ALU的逻辑结构图。

参考答案(图略):

将如图3.15所示的两个16位ALU级联起来即可,级联时,低16位ALU的高位进位C16作为高16位ALU的低位进位C0,因此,只要用8片SN74181和2片SN74182。

9.已知x = 10,y = – 6,采用6位机器数表示。请按如下要求计算,并把结果还原成真值。

(1)求[x+y]补,[x–y]补。

(2)用原码一位乘法计算[x×y]原。

(3)用MBA(基4布斯)乘法计算[x×y]补。

(4)用不恢复余数法计算[x/y]原的商和余数。

(5)用不恢复余数法计算[x/y]补的商和余数。

参考答案:

[10]补= 001010 [–6]补= 111010 [6]补= 000110 [10]原= 001010 [–6]原= 100110

(1)[10+(– 6)]补= [10]补+[– 6]补= 001010+111010 = 000100 (+4)

[10–(–6)]补= [10]补+[– (–6)]补= 001010+000110 = 010000 (+16)

(2)先采用无符号数乘法计算001010× 000110的乘积,原码一位乘法过程(前面两个0省略)如下:

C P Y 说明

0 0 0 0 0 0 1 1 0 P0 = 0

+ 0 0 0 0 y4 = 0,+0

0 0 0 0 0 C, P 和Y同时右移一位

0 0 0 0 0 0 0 1 1 得P1

+ 1 0 1 0 y3 = 1,+X

0 1 0 1 0 C, P 和Y同时右移一位

0 0 1 0 1 0 0 0 1 得P2

+ 1 0 1 0 y2 = 1,+X

0 1 1 1 1 0 0 0 0 C, P 和Y同时右移一位

0 0 1 1 1 1 0 0 0 得P3

+ 0 0 0 0 y1 = 0,+0

0 0 1 1 1 C, P 和Y同时右移一位

0 0 0 1 1 1 1 0 0 得P4

若两个6位数相乘的话,则还要右移两次,得000000 111100

符号位为:0 1 = 1,因此,[X×Y]原= 1000 0011 1100

即X × Y = –11 1100B = – 60

(3)[–10]补= 110110,布斯乘法过程如下:

P Y y-1说明

0 0 0 0 0 0 1 1 1 0 1 0 0 设y-1 = 0,[P0]补= 0

y0 y-1 = 00,P、Y直接右移一位

0 0 0 0 0 0 0 1 1 1 0 1 0 得[P1]补

+ 1 1 0 1 1 0 y1 y0 =10,+[–X]补

1 1 0 1 1 0 P、Y同时右移一位

1 1 1 0 1 1 0 0 1 1 1 0 1 得[P2]补

+ 0 0 1 0 1 0 y2 y1 =01,+[X]补

0 0 0 1 0 1 P、Y同时右移一位

0 0 0 0 1 0 1 0 0 1 1 1 0 得[P3]补

+ 1 1 0 1 1 0 1 0 0 1 1 1 0 y3 y2 = 10,+[–X]补

1 1 1 0 0 0 P、Y同时右移一位

1 1 1 1 0 0 0 1 0 0 1 1 1 得[P4]补

+ 0 0 0 0 0 0 0 1 0 0 1 1 1 y4 y3 = 11,+0

1 1 1 1 0 0 P、Y同时右移一位

1 1 1 1 1 0 0 0 1 0 0 1 1 得[P5]补

+ 0 0 0 0 0 0 0 0 1 0 0 1 1 y5 y4 = 11,+0

1 1 1 1 1 0 P、Y同时右移一位

1 1 1 1 1 1 0 0 0 1 0 0 1 得[P6]补

因此,[X × Y]补=1111 1100 0100,即X × Y = –11 1100B= – 60

(4)因为除法计算是2n位数除n位数,所以[6]原=0110,[10]原=0000 1010,[–6]补=1010,商的符号位:0 1 = 1,运算过程(前面两个0省略)如下:

余数寄存器R 余数/商寄存器Q 说明

原0100。(5)将10和–6分别表示成补码形式为:[10]补= 0 1010 , [–6]补= 1 1010,计算过程如下:先对被除数进行符号扩展,[10]补=00000 01010,[6]补= 0 0110

余数寄存器R 余数/商寄存器Q 说明

0 0 0 0 0 0 1 0 1 0 开始R0 = [X]

+ 1 1 0 1 0 R1=[X] +[Y]

1 1 0 1 0 0 1 0 1 0 R1与[Y]同号,则q5 =1

1 0 1 0 0 1 0 1 0 1 2R1(R和Q同时左移,空出一位上商1)

+0 0 1 1 0 R2 = 2R1+[–Y]

1 1 0 1 0 1 0 1 0 1 R2与[Y]同号,则q4= 1,

1 0 1 0 1 0 1 0 1 1 2R2(R和Q同时左移,空出一位上商1)

+ 0 0 1 1 0 R3 = 2R2 +[-Y]

1 1 0 1 1 0 1 0 1 1 R3与[Y]同号,则q3 = 1

1 0 1 1 0 1 0 1 1 1 2R3(R和Q同时左移,空出一位上商1)

+ 0 0 1 1 0 R4 = 2R3 +[–Y]

1 1 1 0 0 1 0 1 1 1 R4与[Y]同号,则q

2 = 1

1 1 0 0 1 0 1 1 1 1 2R4(R和Q同时左移,空出一位上商0)

+ 0 0 1 1 0 R5= 2R4 +[-Y]

1 1 1 1 1 0 1 1 1 1 R5与[Y]同号,则q1= 1,

1 1 1 1 0 1 1 1 1 1 2R5(R和Q同时左移,空出一位上商1)

+ 0 0 1 1 0 R6= 2R5 +[–Y]

0 0 1 0 0 1 1 1 1 0 R6与[Y]异号,则q 0 = 0,Q左移,空出一位上商1

+ 0 0 0 0 0 + 1 商为负数,末位加1;余数不需要修正

0 0 1 0 0 1 1 1 1 1

所以,[X/Y]补=11111,余数为00100。

即:X/Y= – 0001B = – 1,余数为0100B = 4

将各数代入公式“除数×商+余数= 被除数”进行验证,得:(–6)×(–1) +4= 10。

10.若一次加法需要1ns,一次移位需要0.5ns。请分别计算用一位乘法、两位乘法、基于CRA的阵列乘法、基于CSA的阵列乘法四种方式计算两个8位无符号二进制数乘积时所需的时间。

参考答案:

一位乘法:8次右移,8次加法,共计12ns;

二位乘法:4次右移,4次加法,共计6ns;

基于CRA的阵列乘法:每一级部分积不仅依赖于上一级部分积,还依赖于上一级最终的进位,而每一级进位又是串行进行的,所以最长的路径总共经过了8+2×(8–1)=22次全加器,共计约22ns;

基于CSA的阵列乘法:本级进位和本级和同时传送到下一级,同级部分积之间不相互依赖,只进行O (N)次加法运算,因此,共计约8ns。

11.在IEEE 754浮点数运算中,当结果的尾数出现什么形式时需要进行左规,什么形式时需要进行右规?

如何进行左规,如何进行右规?

参考答案:

(1) 对于结果为±1x .xx……x的情况,需要进行右规。右规时,尾数右移一位,阶码加1。右规操作可

以表示为:M b←M b ×2 -1,E b←E b+1。右规时注意以下两点:

a)尾数右移时,最高位“1”被移到小数点前一位作为隐藏位,最后一位移出时,要考虑舍入。

b)阶码加1时,直接在末位加1。

(2) 对于结果为±0.00……01x……x的情况,需要进行左规。左规时,数值位逐次左移,阶码逐次减1,

直到将第一位“1”移到小数点左边。假定k为结果中“±”和左边第一个1之间连续0的个数,则左规操作可以表示为:M b←M b ×2k,E b←E b–k。左规时注意以下两点:

a) 尾数左移时数值部分最左k个0被移出,因此,相对来说,小数点右移了k位。因为进行尾数相加时,

默认小数点位置在第一个数值位(即:隐藏位)之后,所以小数点右移k位后被移到了第一位1后面,这个1就是隐藏位。

b) 执行E b←E b–k时,每次都在末位减1,一共减k次。

12.在IEEE 754浮点数运算中,如何判断浮点运算的结果是否溢出?

参考答案:

浮点运算结果是否溢出,并不以尾数溢出来判断,而主要看阶码是否溢出。尾数溢出时,可通过右规操作进行纠正。阶码上溢时,说明结果的数值太大,无法表示;阶码下溢时,说明结果数值太小,可以把结果近似为0。

在进行对阶、规格化、舍入和浮点数的乘/除运算等过程中,都需要对阶码进行加、减运算,可能会发生阶码上溢或阶码下溢,因此,必须对阶码进行溢出判断。

(有关对阶码进行溢出判断的方法可参见教材中相关章节。)

13.假设浮点数格式为:阶码是4位移码,偏置常数为8,尾数是6位补码(采用双符号位),用浮点运算规则分别计算在不采用任何附加位和采用2位附加位(保护位、舍入位)两种情况下的值。(假定对阶和右规时采用就近舍入到偶数方式)

(1)(15/16) ×27 +(2/16) ×25(2)(15/16) ×27–(2/16) ×25

(3)(15/16) ×25 +(2/16) ×27(4)(15/16) ×25–(2/16) ×27

参考答案(假定采用隐藏位):

X= (15/16) ×27 = 0.111100B ×27= (1.111000)2 × 26

Y1= (2/16) ×25 = 0.001000B ×25= (1.000000)2 × 22

Y2= (–2/16) ×25 = –0.001000B ×25= (–1.000000)2 × 22

K= (15/16) ×25 = 0.111100B ×25= (1.111000)2 × 24

J1= (2/16) ×27 = 0.001000B ×27= (1.000000)2 × 24

J2= (–2/16) ×27 = –0.001000B ×27= (–1.000000)2 × 24

根据题目所给的各种位数,可以得到在机器中表示为:

[X]浮= 00 1110 (1)111000 [Y1]浮= 00 1010 (1)000000 [Y2]浮= 11 1010 (1)000000

[K]浮= 00 1100 (1)111000 [J1]浮= 00 1100 (1)000000 [J2]浮= 11 1100 (1)000000

所以,E x = 1110,M x = 00 (1). 111000 ,E y1 = 1010,M y = 00(1).000000,E y2 = 1010,M y = 11(1).000000

E k = 1100,M K = 00 (1). 111000 ,E J1 = 1100,M J1 = 00(1).000000,E J2 = 1100,M J2 = 11(1).000000

尾数M中小数点前面有三位,前两位为数符,表示双符号,第三位加了括号,是隐藏位“1”。

没有附加位时的计算:

(1)X+Y1

[ΔE]补= [E x]移+ [–[E y1]移]补(mod 2n) = 1110 + 0110 = 0100

ΔE = 4,根据对阶规则可知需要对y1进行对阶,结果为:E y1 = E x = 1110,M y 1= 000.000100

尾数相加:M b = M x + M y1 = 001. 111000+ 000.000100 = 001.111100,两位符号相等,数值部分最高位为1,不需要进行规格化,所以最后结果为:E=1110,M=00(1).111100, 即(31/32) ×27

(2)X+Y2

[ΔE]补= [E x]移+ [–[E y2]移]补(mod 2n) = 1110 + 0110 = 0100;

ΔE = 4,根据对阶规则可知需要对y2进行对阶,结果为:E y2 = E x = 1110,M y2= 111.111100

尾数相加:M b = M x + M y2 = 001. 111000+ 111.111100=001.110100,两位符号相等,数值部分最高为1,不需要进行规格化,所以最后结果为:E=1110,M=00(1).110100, 即(29/32) ×27

(3)K+J1

[ΔE]补= [E K]移+ [–[E J1]移]补(mod 2n) = 1100 + 0100 = 0000;

ΔE = 0,根据对阶规则可知不需要进行对阶。

尾数相加:M b = M K + M J1 = 001. 111000+ 001.000000= 010.111000,两位符号不等,说明尾数溢出,需要进行右规,最后结果为:E=1101,M=00(1).011100, 即(23/32) ×26

(4)K+J2

[ΔE]补= [E K]移+ [–[E J2]移]补(mod 2n) = 1100 + 0100 = 0000;

ΔE = 0,根据对阶规则可知不需要进行对阶。

尾数相加:M b = M K + M J2 = 00 1. 111000+ 111.000000 = 000.111000,两位符号相等,数值部分最高位为0,需要进行左规,所以最后结果为:E=1011,M=00(1).110000, 即(7/8) ×24

如果有两位附加位精度上会有提高,在对阶的时候要注意小数点后就不是6位,而是8位,最后两位为保护位和舍入位。但是由于本题6位尾数已经足够,再加2位附加位,其结果是一样的。

14.采用IEEE 754单精度浮点数格式计算下列表达式的值。

(1)0.75+(– 65.25)(2)0.75–(– 65.25)

参考答案:

x = 0.75 = 0.110...0B = (1.10...0)2 × 2-1

y = – 65.25 = – 1000001.01000...0B = (–1.00000101...0) 2 × 26

用IEEE 754标准单精度格式表示为:

[x]浮= 0 01111110 10...0 [y]浮= 1 10000101 000001010 0

所以,E x = 01111110,M x = 0 (1). 1...0 ,E y = 10000101,M y = 1(1).000001010 0

尾数M x和M y中小数点前面有两位,第一位为数符,第二位加了括号,是隐藏位“1”。

以下是计算机中进行浮点数加减运算的过程(假定保留2位附加位:保护位和舍入位)

(1)0.75+ (– 65.25)

①对阶:[ΔE]补= [E x]移+ [–[E y]移]补(mod 2n) = 0111 1110 + 0111 1011 = 1111 1001

ΔE = –7,根据对阶规则可知需要对x进行对阶,结果为:E x = E y = 10000101,M x = 00.000000110 (000)

x的尾数M x右移7位,符号不变,数值高位补0,隐藏位右移到小数点后面,最后移出的2位保留

②尾数相加:M b = M x + M y = 00.000000110...000+ 11.000001010 ...000 (注意小数点在隐藏位后)

根据原码加/减法运算规则,得:00.000000110...000+ 11.000001010...000 = 11.000000100 (000)

上式尾数中最左边第一位是符号位,其余都是数值部分,尾数后面两位是附加位(加粗)。

③规格化:根据所得尾数的形式,数值部分最高位为1,所以不需要进行规格化。

④舍入:把结果的尾数M b中最后两位附加位舍入掉,从本例来看,不管采用什么舍入法,结果都

一样,都是把最后两个0去掉,得:M b = 11.000000100 0

⑤溢出判断:在上述阶码计算和调整过程中,没有发生“阶码上溢”和“阶码下溢”的问题。因此,

阶码E b = 10000101。

最后结果为E b = 10000101,M b = 1(1).00000010…0,即:– 64.5。

(2)0.75–(– 65.25)

①对阶:[ΔE]补= [E x]移+ [–[E y]移]补(mod 2n) = 0111 1110 + 0111 1011 = 1111 1001

ΔE = -7,根据对阶规则可知需要对x进行对阶,结果为:E x = E y = 10000110,M x = 00.000000110 (000)

x的尾数M x右移一位,符号不变,数值高位补0,隐藏位右移到小数点后面,最后移出的位保留

②尾数相加:M b = M x– M y = 00.000000110...000 – 11.000001010...000 (注意小数点在隐藏位后)

根据原码加/减法运算规则,得:00.000000110...000 – 11.000001010...000=01.00001000 (000)

上式尾数中最左边第一位是符号位,其余都是数值部分,尾数后面两位是附加位(加粗)。

③规格化:根据所得尾数的形式,数值部分最高位为1,不需要进行规格化。

④舍入:把结果的尾数M b中最后两位附加位舍入掉,从本例来看,不管采用什么舍入法,结果都

一样,都是把最后两个0去掉,得:M b = 01.00001000 0

⑤溢出判断:在上述阶码计算和调整过程中,没有发生“阶码上溢”和“阶码下溢”的问题。因此,

阶码E b = 10000101。

最后结果为E b = 10000101,M b = 0(1).00001000…0,即:+66。

思考题:对阶时发生什么情况,就可以不再继续进行计算?

15.假定十进制数用8421 NBCD码表示,采用十进制加法运算计算下列表达式的值,并讨论在十进制BCD 码加法运算中如何判断溢出。

(1)234+567 (2)548+729

参考答案:

(1)234+567

0010 0011 0100

+ 0101 0110 0111

0111 1001 1011

1000 0000 0001 结果为:(801)10

(2)548+729

0000 0101 0100 1000

结果为:(1277)10

在第(2)题中,如果是采用12位数表示加数548和729,则能看出最后得到的答案是1100 0111 0111,这时就是BCD码加法溢出了。所以我们在判断的时候不能仅仅看BCD码最高位是不是丢失,而要看结果的最高4位是不是大于9,如果大于9,就可以认为是溢出了。

16.假定十进制数用8421 NBCD码表示,十进制运算673–356可以采用673加上(–356)的模10补码实现。

画出实现上述操作的3位十进制数的BCD码减法运算线路,列出线路中所有的输入变量和输出变量。

参考答案:

[– (356) 10]补= 0110 0100 0100

0110 0111 0011

+ 0110 0100 0100

1100 1011 0111

最高位产生进位,因此,结果为正数:0011 0001 0111,故结果为:(+317)10

电路图分为两部分,一个是求出模10补码,另一个是计算以及判断输出结果的电路图(参见教材图3.33)。求模10补码的电路图(RTL级)如下:

计算电路图(RTL级)如下:

计算机系统结构题库

《计算机系统结构》题库 一.单项选择题(在下列每小题的四个备选答案中,只有一个答案是正确的,请把你认为是正确的答案填入题后的()内,每小题2分) 第一章: 1.计算机系统多级层次中,从下层到上层,各级相对顺序正确的应当是: A.汇编语言机器级---操作系统机器级---高级语言机器级 B.微程序机器级---传统机器语言机器级---汇编语言机器级 C.传统机器语言机器级---高级机器语言机器级---汇编语言机器级 D.汇编语言机器级---应用语言机器级---高级语言机器级 答案:B 分数:2 所属章节1—1 2.汇编语言源程序变成机器语言目标程序是经来实现的。 A. 编译程序解释 B. 汇编程序解释 C. 编译程序翻译 D. 汇编程序翻译 答案:D 分数:2 所属章节1—1 3.直接执行微指令的是: A. 汇编程序 B. 编译程序 C. 硬件 D. 微指令程序 答案:C 分数:2 所属章节1—1 4.对系统程序员不透明的是: A. Cache存储器 B. 系列机各档不同的数据通路宽度 C. 指令缓冲寄存器 D. 虚拟存储器 答案:D 分数:2 所属章节1—2 5.对应用程序员不透明的是: A. 先行进位链 B. 乘法器 C. 指令缓冲器 D. 条件码寄存器 答案:D 分数:2 所属章节1—2 6.对机器语言程序员透明的是: A. 中断字 B. 主存地址寄存器 C. 通用寄存器 D. 条件码 答案:B 分数:2 所属章节1—2 7.计算机系统结构不包括: A. 主存速度 B. 机器工作状态 C. 信息保护 D. 数据表示 答案:A 分数:2 所属章节1—2 8.对计算机系统结构透明的是: A. 字符行运算指令 B. 是否使用通道行I/O处理机 C. 虚拟存储器 D. VLSI技术 答案:D 分数:2 所属章节1—2 9.对汇编语言程序员透明的是: A.I/O方式中的DMA访问方式 B. 浮点数据表示 C. 访问方式保护 D 程序性中断. 答案:A 分数:2 所属章节1—2 10.属计算机系统结构考虑的应是:

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

《计算机组织与体系结构》 实验报告 学号: 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填充,具体由相应的指令控制。使用另外的逻辑进行移位总量译码和符号判别。

2010年4月自考计算机系统结构试题及答案

全国2010年4月自学考试计算机系统结构试题 课程代码:02325 一、单项选择题(本大题共10小题,每小题1分,共10分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均不得分。 1.在计算机系统结构设计中,提高软件功能实现的比例可( ) A.提高解题速度B.减少需要的存储器容量 C.提高系统的灵活性D.提高系统的性能价格比 2.浮点数表示的尾数的基r m=16,尾数长度p=8,可表示的规格化最大正尾数的值是( ) A.1/256 B.1/2 C.15/16 D.255/256 3.下列数据存储空间为隐含寻址方式的是( ) A.CPU中的通用寄存器B.主存储器 C.I/O接口中的寄存器D.堆栈 4.当计算机系统执行通道程序完成输入输出工作时,执行通道程序的是( ) A.CPU B.通道 C.CPU和通道D.指定的外设 5.下列有关中断的叙述正确的是( ) A.中断响应的次序是由硬件决定的B.中断处理的次序是由硬件决定的 C.中断处理的次序是不可改的D.中断响应的次序是可灵活改变的 6.与虚拟存储器的等效访问速度无关 ..的是( ) A.访存页地址流B.页面替换算法 C.主存的容量D.辅存的容量 7.非线性流水线的特征是( ) A.一次运算中使用流水线中的多个功能段 B.一次运算中多次使用流水线中的某些功能段 C.流水线中某些功能段在各次运算中的作用不同 D.流水线的各功能段在不同的运算中可以有不同的连接 8.属于集中式共享存储器结构的SIMD计算机是( ) A.ILLIAC IV B.BSP C.CM-2 D.MP-1 1

计算机组成与系统结构

计算机组成与系统结构 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.汉字编码分为三类:汉字输入编码、国际码和汉字内码以及汉字字模码。

计算机体系结构试题汇总

计算机系统结构 姓名:学号: 一、简答题(每小题10分,共20分) 1.简述使用物理地址进行DMA存在的问题,及其解决办法。 2.从目的、技术途径、组成、分工方式、工作方式等5个方面对同构型多处理机和异构型多处理机做一比较(列表)。 二、(60分)现有如下表达式: Y=a ×X 其中:X和Y是两个有64个元素的32位的整数的向量,a为32位的整数。假设在存储器中,X和Y的起始地址分别为1000和5000,a的起始地址为6000。 1.请写出实现该表达式的MIPS代码。 2.假设指令的平均执行时钟周期数为5,计算机的主频为500 MHz,请计算上述MIPS 代码(非流水化实现)的执行时间。 3.将上述MIPS代码在MIPS流水线上(有正常的定向路径、分支指令在译码段被解析出来)执行,请以最快执行方式调度该MIPS指令序列。注意:可以改变操作数,但不能改变操作码和指令条数。画出调度前和调度后的MIPS代码序列执行的流水线时空图,计算调度前和调度后的MIPS代码序列执行所需的时钟周期数,以及调度前后的MIPS流水线执行的加速比。 4.根据3的结果说明流水线相关对CPU性能的影响。 三、(20分)请分析I/O对于性能的影响有多大?假设: 1.I/O操作按照页面方式进行,每页大小为16 KB,Cache块大小为64 B;且对应新页的地址不在Cache中;而CPU不访问新调入页面中的任何数据。 2.Cache中95%被替换的块将再次被读取,并引起一次失效;Cache使用写回方法,平均50%的块被修改过;I/O系统缓冲能够存储一个完整的Cache块。 3.访问或失效在所有Cache块中均匀分布;在CPU和I/O之间,没有其他访问Cache 的干扰;无I/O时,每1百万个时钟周期中,有15,000次失效;失效开销是30个时钟周期。如果替换块被修改过,则再加上30个周期用于写回主存。计算机平均每1百万个周期处理一页。

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

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、由上往下的设计(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。

计算机系统结构作业答案第三章(张晨曦)

3.1 -3.3为术语解释等解答题。 3.4 设一条指令的执行过程分为取指令,分析指令和执行指令3个阶段,每个阶段所需时间分别为ΔT, ΔT, 2ΔT,分别求出下列各种情况下,连续执行N条指令所需的时间。 (1) 顺序执行方式 (2) 只有“取指令”与“执行指令”重叠 (3) “取指令”,“分析指令”与“执行指令”重叠 解: (1) 4NΔT (2) (3N+1) ΔT (3) 2(N+1) ΔT 3.6 解决流水线瓶颈问题有哪两种常用方法? 解: (1) 细分瓶颈段 将瓶颈段细分为若干个子瓶颈段 (2) 重复设置瓶颈段 重复设置瓶颈段,使之并行工作,以此错开处理任务 3.9 列举下面循环中的所有相关,包括输出相关,反相关,真数据相关。 for(i = 2; i < 100; i=i+1) { a[i] = b[i] + a[i]; -----(1) c[i+1] = a[i] + d[i]; -----(2) a[i-1] = 2*b[i]; -----(3) b[i+1] = 2*b[i]; -----(4) } 解: 输出相关:第k次循环时(1)与第k+1轮时(3) 反相关:第k次循环时(1)和(2)与第k-1轮时(3) 真数据相关:每次循环(1)与(2),第k次循环(4)与k+1次循环(1),(3),(4) 3.12 有一指令流水线如下所示 50ns 50ns 100ns 200ns (1)求连续如入10条指令的情况下,该流水线的实际吞吐率和效率 (2)该流水线的“瓶颈”在哪一段?请采用两种不同的措施消除此“瓶颈”。对于你所给出 的两种新的流水线连续输入10条指令时,其实际吞吐率和效率各是多少? 解:(1)(m表示流水线级数,n 表示任务数)

计算机系统结构考试题库及答案

计算机系统结构试题及答案 一、选择题(50分,每题2分,正确答案可能不只一个,可单选 或复选) 1.(CPU周期、机器周期)是内存读取一条指令字的最短时间。 2.(多线程、多核)技术体现了计算机并行处理中的空间并行。 3.(冯?诺伊曼、存储程序)体系结构的计算机把程序及其操作数 据一同存储在存储器里。 4.(计算机体系结构)是机器语言程序员所看到的传统机器级所具 有的属性,其实质是确定计算机系统中软硬件的界面。 5.(控制器)的基本任务是按照程序所排的指令序列,从存储器取 出指令操作码到控制器中,对指令操作码译码分析,执行指令操作。 6.(流水线)技术体现了计算机并行处理中的时间并行。 7.(数据流)是执行周期中从内存流向运算器的信息流。 8.(指令周期)是取出并执行一条指令的时间。 9.1958年开始出现的第二代计算机,使用(晶体管)作为电子器件。 10.1960年代中期开始出现的第三代计算机,使用(小规模集成电路、 中规模集成电路)作为电子器件。 11.1970年代开始出现的第四代计算机,使用(大规模集成电路、超 大规模集成电路)作为电子器件。 12.Cache存储器在产生替换时,可以采用以下替换算法:(LFU算法、 LRU算法、随机替换)。

13.Cache的功能由(硬件)实现,因而对程序员是透明的。 14.Cache是介于CPU和(主存、内存)之间的小容量存储器,能高 速地向CPU提供指令和数据,从而加快程序的执行速度。 15.Cache由高速的(SRAM)组成。 16.CPU的基本功能包括(程序控制、操作控制、时间控制、数据加 工)。 17.CPU的控制方式通常分为:(同步控制方式、异步控制方式、联合 控制方式)反映了时序信号的定时方式。 18.CPU的联合控制方式的设计思想是:(在功能部件内部采用同步控 制方式、在功能部件之间采用异步控制方式、在硬件实现允许的情况下,尽可能多地采用异步控制方式)。 19.CPU的同步控制方式有时又称为(固定时序控制方式、无应答控 制方式)。 20.CPU的异步控制方式有时又称为(可变时序控制方式、应答控制 方式)。 21.EPROM是指(光擦可编程只读存储器)。 22.MOS半导体存储器中,(DRAM)可大幅度提高集成度,但由于(刷 新)操作,外围电路复杂,速度慢。 23.MOS半导体存储器中,(SRAM)的外围电路简单,速度(快),但 其使用的器件多,集成度不高。 24.RISC的几个要素是(一个有限的简单的指令集、CPU配备大量的 通用寄存器、强调对指令流水线的优化)。

吉林大学计算机系统结构题库第三章

第三章流水线技术 知识点汇总 先行控制、流水线、单功能流水线、多功能流水线、静态流水线、动态流水线、部件级流水线、处理机级流水线、处理机间流水线、线性流水线、非线性流水线、顺序流水线、乱序流水线、时空图、流水线性能评价(吞吐率、加速比、效率)、解决流水线瓶颈问题方法、相关(数据相关、名相关、控制相关)、换名技术、流水线冲突(结构冲突、数据冲突、控制冲突)、流水线互锁机制、定向技术、指令调度、预测分支失败、预测分支成功、延迟分支(从前调度、从失败处调度、从成功处调度)、流水寄存器、3种向量处理方式(横向、纵向、纵横)、链接技术。 简答题 1.流水技术有哪些特点?(答出4个即可)(知识点:流水线) 答:1.将处理过程分解为若干子过程,由专门的功能部件来实现,2各段的时间尽可能相等,3各部件间都有一个缓冲寄存器,4适用于大量重复的时序过程,5需要通过时间和排空时间。 2.什么是静态流水线?什么是动态流水线?(知识点:静态流水线、动态流水线) 答:同一时间段内,多功能流水线中的各段只能按同一种功能的连接方式工作;同一时间段内,多功能流水线中的各段可以按照不同的方式连接同时执行多种功能。 3.什么是单功能流水线?什么是多功能流水线?(知识点:单功能流水线、多功能流水线) 答:只能完成一种固定功能的流水线。流水线的各段可以进行不同的连接,以实现不同的功能。 4.什么是线性流水线?什么是非线性流水线?(知识点:线性流水线、非线性流水线) 答:流水线的各段串行连接,没有反馈回路。流水线中除了有串行的连接外,还有反馈回路。 5.列举3种相关。(知识点:相关) 答:数据相关,名相关,控制相关。 6.流水线中有哪三种冲突?各是什么原因造成的?(知识点:流水线冲突) 答:结构冲突,硬件资源满足不了指令重叠执行的要求;数据冲突,指令在流水线中重叠执行时需要用到前面指令的执行结果;控制冲突,流水线遇到分支指令和其他会改变PC值的指令。 7.选择至少2种解决流水线结构冲突的方法简述。(知识点:结构冲突) 答:流水线停顿一个时钟周期,推迟后面的指令操作。设置相互独立的指令存储器和数据存储器。 8.选择至少2种解决流水线数据冲突的方法简述。(知识点:数据冲突) 答:定向技术,将计算结果从其产生的地方直接送到其他指令需要的地方。通过编译时让编译器重新组织指令顺序来消除冲突。

计算机组织与系统结构 (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 ?

计算机组织与体系结构课后习题答案

体系结构课后习题答案 第二章 1,设A,B,C 的内存地址分别是A[i],B[i],C[i],i 从1到1000 LOAD M (A[i]) ADD M (B[i]) STOR M(C[i]) 2, a LOAD M (2) 00000001|000000000010 b 一次 3,在IAS 机上读取一个值的过程如下: IR 中操作码→控制总线,存储器地址X →MAR,MAR 中值→地址总线 X 中数据→数据总线,数总线地址→MBR 写入一个值: IR 中操作码→控制总线,存储器地址X →MAR,MAR 值→地址总线 MBR 值→数据总线,数据总线值→X 4,程序代码:LOAD M(0FA) ADD M(0FB) LOAD M(0FA) JUMP +M(08D,0:19) LOAD –M(0FA) ADD M(0FB) 程序代码意图:首先装入0FA 值,然后与0FB 相加,再装入0FA 值,若AC 中值非负,取0FA 左指令再装入-(0FA )将0FB 的值相加后装入AC 中 5,如图所示 AC MQ 算术-逻辑电路 40 40 MBR I/O 设备 IBR IR 控制电路 PC MAR 主存储器M 40 20 8 40 12 12 8 40 12

6,便于同时存取两个连续地址序号的存储单元,提高访问速度 7,(1)存储器数据传输率快了32倍 (2)数据通道最大数目增大了一倍 (3)单通道最大数据传输速率提升了5倍。各种技术的使用,提升了整机的性能。 8,回答正确,但是不适合用户理解。MAC机的时钟速率是1.2ghz,P4为2.4ghz,而时钟速率在一定程度上反映了计算机的执行速度,所以P4的机器可能是目前最符合用户要求的机型。 9,在这种表示方法中,10个管表示了十个数字,而使用二进制可以表示错误!未找到引用源。个数字 10,(画图)略 11,MIPS=错误!未找到引用源。*错误!未找到引用源。 12,∵MIPS=错误!未找到引用源。*错误!未找到引用源。 ∴CPI(VAX)=5,CPI(IBM)=1.39 IC≈错误!未找到引用源。 13,CPI=(1+2+2+2)/错误!未找到引用源。=7*错误!未找到引用源。 MIPS=错误!未找到引用源。*错误!未找到引用源。=错误!未找到引用源。*错误!未找到引用源。=5.71*错误!未找到引用源。 T=7*错误!未找到引用源。*错误!未找到引用源。=1.75*错误!未找到引用源。14,a:算术平均法适用于较多程序,抖动较大 调和平均发适用于较少程序,抖动较小 b:计算机A Ra=1/4×(100+0.1+0.2+1)≈25 MIPS Rb=4/(1/100+10+5+1)=0.25 MIPS 计算机B Ra=1/4×(10+0.1++1+1/8)=3.06 Rb=4/(0.1+1+10+8)=0.21 计算机C Ra=1/4×(5+5+2+1)=3.25 Rb=4/(0.2+0.2+0.5+1)=2.1 故C>A>B 第三章 1 步骤一 存储器CPU寄存器 1 0011 1 pc 2 5940 ac 3 26 0011 ir 5 0003 6 步骤二 存储器CPU寄存器 1 0011 2 pc 2 5940 000 3 ac 3 26 0011 ir

相关文档
最新文档