计算机组成原理和系统结构课后答案 下载本文

1.1 概述数字计算机的发展经过了哪几个代?各代的基本特征是什么? 略。

1.2 你学习计算机知识后,准备做哪方面的应用? 略。

1.3 试举一个你所熟悉的计算机应用例子。

略。

1.4 计算机通常有哪些分类方法?你比较了解的有哪些类型的计算机?

略。

1.5 计算机硬件系统的主要指标有哪些?

答:机器字长、存储容量、运算速度、可配置外设等。 答:计算机硬件系统的主要指标有:机器字长、存储容量、运算速度等。

1.6 什么是机器字长?它对计算机性能有哪些影响?

答: 指CPU一次能处理的数据位数。它影响着计算机的运算速

度,硬件成本、指令系统功能,数据处理精度等。 1.7 什么是存储容量?什么是主存?什么是辅存?

答:存储容量指的是存储器可以存放数据的数量(如字节数)。

1

它包括主存容量和辅存容量。

主存指的是CPU能够通过地址线直接访问的存储器。如内存等。 辅存指的是CPU不能直接访问,必须通过I/O接口和地址变换等方法才能访问的存储器,如硬盘,u盘等。

1.8 根据下列题目的描述,找出最匹配的词或短语,每个词或短

语只能使用一次。

(1)为个人使用而设计的计算机,通常有图形显示器、键盘和

鼠标。

(2)计算机中的核心部件,它执行程序中的指令。它具有加法、

测试和控制其他部件的功能。

(3)计算机的一个组成部分,运行态的程序和相关数据置于其

中。

(4)处理器中根据程序的指令指示运算器、存储器和I/O设备做

什么的部件。

(5)嵌入在其他设备中的计算机,运行设计好的应用程序实现

相应功能。

(6)在一个芯片中集成几十万到上百万个晶体管的工艺。 (7)管理计算机中的资源以便程序在其中运行的程序。 (8)将高级语言翻译成机器语言的程序。

2

(9)将指令从助记符号的形式翻译成二进制码的程序。 (10)计算机硬件与其底层软件的特定连接纽带。

供选择的词或短语:

1、汇编器 2、嵌入式系统 3、中央处理器(CPU) 4、编译器

5、操作系统 6、控制器 7、机器指令 8、台式机或个人计算机

9、主存储器 10、VLSI

答:(1)8,(2)3,(3)9,(4)6,(5)2, (6)10,(7)5,(8)4,(9)1,(10)7

计算机系统有哪些部分组成?硬件由哪些构成? 答:计算机系统硬件系统和软件系统组成。

硬件由控制器、存储器、运算器、输入设备和输出设备五大部件构成

1.9 冯·诺伊曼Von Neumann计算机的主要设计思想是什么? 略。

1.10 计算机硬件有哪些部件,各部件的作用是什么? 略。

1.11 计算机软件包括哪几类?说明它们的用途。

3

略。

1.12 简述计算机系统的多级层次结构的分层理由及各层的功能。 略。

1.13 通过计算机系统的层次结构学习,你对计算机系统有了怎样的了解? 略。

第二章

2.1 数字信号和模拟信号的主要区别是什么?与模拟电路相比,数字电路有何特点? 略。

2.2 二极管两端需要加多大的电压才使二极管导通?

答:大于二极管的正向特性存在死区电压Vr(硅二极管约为0.7V,锗二极管约为0.2V)

2.3 三极管何时处于截止状态,何时处于饱和状态?

答:当输入电压Vi>0,且Vi < 死区电压Vr’,三极管处于截止状态。 当输入电压Vi增大,基极电流IB、集电极电流IC随之增大,输入电压VCE=VCC-ICRC不断下降,当VCE降到0.7V以下时,发射结仍正向偏置,集电结则由反向偏置转为正向偏置,此时三极管进

4

入饱和状态。

2.4 双极型逻辑门和单极型逻辑分别是怎样形成的?它们各有何特点? 略.

2.5 实现逻辑代数的基本运算有哪几种逻辑门? 答:与,或,非。

2.6 分析图2-41所示的逻辑电路图,写出表达式并进行化简。

F? AB

(b) F=AD+C +BD

2.7 请用代数化简法将下列各逻辑表达式化成最简式。 (1)F?AB?BC?BC?AB 答:F?AB?AC?BC

(2)F?AD?AD?AB?AC?BD?ACEF?BEF?DEFG 答:F?A?C?BD?BEF

2.8 分析图2-42所示的逻辑电路,列出真值表,说明其逻辑功能。

5

X0AF1X1FX2BCX3F2A1 答:

A0图2-42 习题2. 8图图2-43 习题2.9 图2.8

A1 A0 X0 X1 X2 X3 F 0 0 X X X X X0 0 1 X X X X X1 1 0 X X X X X2 1 1 X X X X X3

图2-42是一个四选一电路

2.9 分析图2-43所示的逻辑电路图,列出真值表,说明其逻辑功能。 答:

6

A B C F1 F2 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1

图2-43是一个一位全加器,A, B为加数和被加数,C为低位进位, F1为和,F2为产生的进位。

(图中有错误,第4个与门的输入少了 A )

2.10 请用卡诺图法将下列各逻辑表达式化成最简式。

(1)F?AB?ABD?AC?BCD (2)F?AC?AB?BCD?BCE?CDE 答:(1)F?AC?AB (2)F?AB?BD?CE?AC

2.11 简述组合逻辑电路的设计过程。

7

略:

2.12 用与非门设计实现下列函数的组合逻辑电路。 (1)F(A,B,C,D)??m(0,2,6,7,10,13,14,15); (2)F(A,B,C,D)??m(2,4,5,6,7,10)???(0,3,8,15)。 答:(1)

F?ABCD?ABCD?ABCD?ABCD?ABCD?ABCD?ABCD?ABCDBC?CD?ABD?ABD=BCCDABDABD

图略。 (2)

F?ABCD?ABCD?ABCD?ABCD?ABCD?ABCD??(ABCD?ABCD?ABCD?ABCD)

=AC?AB?BCD=ACABBCD 图略。

2.13 用一位全加器组成4位并行进位加法器,其并行进位电路应该如何实现? 略。

2.14请画出74LS273的典型用法的接线图。 2.15 什么是三态门?一般应用在什么场合?

8

2.16计算机中常用的寄存器有哪些?请说明如何使用? 略

2.17 请说明74LS299的功能及使用方法。 略

2.18 请说明74LS161的功能及使用方法。 略

习题3

移码(8位) 11111111 10000000 01111111 00000000 补码(8位) 01111111 00000000 11111111 10000000 对应的真值 +127 0

-1

-128

编码对应的 +255 +128 +127 0 无符号数值

3.1 求下列各数的十进制数值:

(1)(267.3)(BD.C)(1011011.101)8 (2)16 (3)

2

9

答:.(1 ) 183.375, (2) 189.75, (3 ) 91.625

3.2 将下列十进制数转化为二进制、八进制和十六进制数据(小

数取四位二进制有效数据):

(1)-282.75 (2)123.46 (3)-115/512 (4)44.9375 答:2.

序号 十进制 十六进制 二进制 八进制

(1) -282.75 -11A.C -100011010.1100 -432.6 (2) 123.46 7B.7 1111011.0111 173.34

(3) -115/512 -0.398 -0.001110011 -0.163

(4) 44.9375 2C.F 101100.1111 54.74

3.3 写出下列各数的原码、反码和补码,机器数长度为8位: (1)0 (2)-127 (3)-0.5 (4)-19/128 (5)100 (6)23/64

序号 真值 原码 补码 反码

10 (1) 0 00000000 00000000 00000000

10000000 11111111

0.0000000 0.0000000 0.0000000

1.0000000 1.1111111

(2) -127 11111111 10000001 10000000 (3) -0.5 1.1000000 1.1000000 1.0111111

(4) -19/128 1.0010011 1.1101101 1.1101100 (5) 100 01100100 01100100 01100100

(6) 23/64 0.0101110 0.0101110 0.0101110

3.4 写出下列各机器数的二进制真值X:

(1)[X]补=0.1001 (2)[X]补=1.1001 (3)[X]原=0.1101 (4)[X]原=1.1101

(5)[X]反=0.1011 (6)[X]反=1.1011 (7)[X]移=0,1001 (8)[X]移=1,1001

11

(9)[X]补=1,0000000(10)[X]反=1,0000000(11)[X]原=1,0000000 (12)[X]移=1,0000000 答:

(1) 0.1001 (7) - 0111 (2) -0. 0111 (8) +1001 (3) +0.1101 (9) - 1000 0000 (4) -0.1101 (10) - 01111111 (5) +0.1011 (11) - 00000000 (6) -0.0100 (12) 00000000

3.5 设某机器数字长为8位,有两个数的16进制表示形式为9CH

和FFH,问:若它们分别表示为下列格式的机器数时,其对应的十进制真值是多少? (1) 无符号整数; (2) 原码表示的定点整数; (3) 原码表示的定点小数; (4) 补码表示的定点整数; (5) 补码表示的定点小数;

12

(6) 反码表示的定点整数; (7) 移码表示的定点整数。

答: 数 9CH (10011100) FFH(11111111)

无符号整数 156 255 原码表示的定点整数 -28 -127 原码表示的定点小数 -(2-3+2-4+2-5) = 0.21875 -(1-2-7) 补码表示的定点整数 -100 -1 补码表示的定点小数 -(2-1+2-2+2-5)=-0.78325 -2-7 反码表示的定点整数 -99 -0 移码表示的定点整数 28 127

3.6 假设某规格化浮点数的尾数表示形式为M0.M1 …… Mn,选

择正确的答案写在横线上:

(1) 若尾数用原码表示,则尾数必须满足 。 (2)若尾数用补码表示,则尾数必须满足 。 A.M0=0

B.M0=1

C.M1=0 G

D.M1=1

E.M0.M1=0.0

F.M0.M1=1.1 M0.M1=0.1

M0.M1=1.0 H.M0.M1=1.0

13

答:(1)D ;(2)G

3.7 浮点数的表示范围取决于 的位数,浮点数的表示精度取决于 的位数,浮点数的正负取决于 , 在浮点数的表示中是隐含规定的。 A.数符

B.阶符

C.尾数

D.阶码

E.阶码的底

答:D, C, A, E

3.8 设一浮点数格式为:字长12位,阶码6位,用移码表示,

尾数6位,用原码表示,阶码在前,尾数(包括数符)在后,则按照该格式:

(1)已知X=-25/64,Y=2.875,求数据X、Y的规格化的浮点数形式。 (2)已知Z的浮点数以十六进制表示为9F4H,则求Z的十进制真值。 答:

(1)

X=-0.11001×2-1, [X ]浮=1.11001×2011111 [X ]浮=0,11111 1.11001

Y=0.10111×22 , [Y ]浮=0.10111×2100010

[Y ]浮=1,00010 0.10111

14

(2)[Z]浮= -0.10100×2100111 Z= -80

3.9 设一机器数字长16位,求下列各机器数的表示范围: (1) 无符号整数; (2) 原码表示的定点整数; (3) 补码表示的定点整数; (4) 补码表示的定点小数;

(5) 非规格化浮点表示,格式为:阶码8位,用移码表示,尾数8位,

用补码表示(要求写出最大数、最小数、最大负数、最小正数); (6)

上述浮点格式的规格化浮点表示范围(要求写出最大数、最

小数、最大负数、最小正数)。

6答: 机器字长16位, 下列各术的表示范围 (1) 无符号整数 0~216-1 (2) 原码定点整数 -(215-1) ~ +215-1 (3) 补码定点整数 -215 ~ +215-1 (4) 补码定点小数 -1 ~ + 1-2-15

(5)、(6) 阶码八位,移码表示,尾数8位,补码表示

15

最大数 最小数 最大负数 最

小正数 非规格化

浮点数 (1-2-7)×2+127 -1×2+127 -2-7×2-128 2-7 ×2-128 规格化

浮点数 (1-2-7) ×2+127 -1 ×2+127 -(0.5+2-7 ) ×2-128 0.5 ×2-128

3.10 将下列十进制数转换为IEEE754 单精度浮点数格式: (1)+36.75 答:

3.11 求下列各IEEE754 单精度浮点数的十进制真值: (1)43990000H

(2)00000000H

(2)-35/256

答:(1) X=(-1)0×(1.0011001) ×2135-127=(100110000)2=(304)10

0

(2) X=(-1)×(1.0000000)

×20-127=(2-127)10

3.12 在汉字系统中,有哪几种编码?它们各自有什么作用? 略。

16

3.13 汉字库中存放的是汉字的哪一种编码?汉字库的容量如何

计算?

答:汉字库中存放的是汉字字模码。汉字库的容量可按下列: 存储每个汉字字模点阵所需的字节数×汉字数×点阵方法数。 3.14 在一个应用系统中,需要构造一个包含了100个汉字的汉

字库,假设采用16×16的汉字字形,问:该汉字库所占存储容量是多少字节?一篇由50个汉字构成的短文,需要占用多少字节的存储容量来存储其纯文本?

答: 16×2×100=3200字节;2 ×50=100字节。

3.15 汉字系统的几种编码中,对于某个汉字来说,是 惟一的。

A. 输入码 B. 字模码 C. 机内码 答:C。

3.16 若下面的奇偶校验码均正确,请指出哪些是奇校验码,哪

些是偶校验码。

(1) 10110110 (2)01111110 (3)11011000 (4)10100001 答:奇校验码:(1)、(4);偶校验码:(2),(3)。

3.17 在7位的ASCII码的最高位前面添加一位奇(偶)校验位

后,即可构成8位的ASCII码的奇(偶)校验码。假设字符“A”

17

的这样的奇(偶)校验码为41H,则它是(1);字符“C”的这样的(1)是(2)。

(1): A. 奇校验码 B. 偶校验码

(2): A. 43H B. 87H C. C3H 86H

答:(1)B; (2)C。

3.18 对于3.6.2节所介绍的k=8,r=4的能纠错一位的海明码,若

编码为100110111100,试判断该海明码是否有误,若有,请纠正,并写出其8位正确的有效信息。 答: 10000111

3.19 试设计有效信息为10位的能纠错一位的海明码的编码和译码

方案,并写出有效信息0110111001的海明码。 答:k=10,r=4的海明码的排列如下:编码:

H14 H13 H12 H11 H10 H9 H8 H7 H6 H5 H4 H3 H2 H1

D10 D9 D8 D7 D6 D5 P4 D4 D3 D2 P3 D1 P2 P1

P4= D10?D9?D8?D7?D6?D5 P3= D10?D9?D8?D4?D3?D2

18

D.

P2= D10?D7?D6?D4?D3?D1

P1= D9?D7?D5?D4?D2?D1 译码:

S4=P4? D10?D9?D8?D7?D6?D5 S3=P3? D10?D9?D8?D4?D3?D2

S2=P2? D10?D7?D6?D4?D3?D1

S1=P1? D9?D7?D5?D4?D2?D1

指误字:S4S3S2S1

效信息0110111001的海明码: 01101101001110

3.20 在3.6.2节所介绍有效信息为8位的能纠错一位的海明码基础

上,思考如何改进,使其能够达到检错两位并能纠错一位的校验能力。 答:略

设生成多项式为X3+X+1(即1011B),请计算有效数据10101的CRC编码。 答:101010101

3.21 试分析3.3节介绍的三种奇偶校验、海明校验和CRC校验三

种校验码的检错纠错能力,它们的码距各为多少?

19

答:奇偶校验码只能检错,可检单个、奇数个错,码距=2; 海明校验可以纠一位错。 CRC校验可以纠一位错。

3.22 在Motorola系列的微处理器中,数据存放在内存的规则是高

位字节存放在低地址单元的,对照图3.10写出各数据在这种情况下的存储方式。 略

习题4

3.23 设X=0.1101,Y= -0.0110,求:

(1)[X]补

(2)[-X]补 (3)[2X]补 (4)[-2X]

(5)[X/2]补

(6)[-X/2]补

(7)[Y]补

(8)[-Y]补 (9)[2Y]补

(10)[-2Y]补

(11)[Y/2]补

(12)

[-Y/2]补

(13)[-Y/4]补

20

1. (1) [X]补=

0.1101

(2) [-X]补= 1.0011 (3) [2X]补= 1.1010 溢出 (4) [-2X]补= 0.0110 溢出 (5)[X/2]补= 0.0110 (6)[-X/2]补= 1.1001 (7)[Y]补= 1.1010 (8) [-Y]补= 0.0110 (9) [2Y]补=1.0100 (10)[-2Y]补=0.1100 (11)[Y/2]补=1.1101 (12)[-Y/2]补= 0.0010 (13) [-Y/4]补= 0.0001

3.24 已知X和Y,用变形补码计算X+Y和X-Y,并指出运算结

果是否溢出:

(1) X=0.11011,Y=0.11111 (2) X=-0.1101,Y=0.0110

答:.

21

(1) [X+Y]补: 溢出 [X-Y]补= 1.11100 (2) [X+Y]补=1.1001 [X-Y]补: 溢出

3.25 试使用两个4位二进制加法器和若干逻辑门电路,设计一位

余3码编码的十进制加法器。(提示:余3码加法的校正规则为:当余3码编码的两个数直接相加后,若结果有进位,则和数加3校正;否则和数减3校正) 图在word下不好画:略:

22

4.4使用原码一位乘法计算X*Y: (1) X=0.11101,Y=0.01111 (2) X=-0.10011,Y=0.11010

答: (1)[X*Y]原 =0.0110110011 (2)[X*Y]原 = 1.0111101110 4.5 使用补码Booth乘法计算X*Y: (3) X=0.01111,Y=-0.11101 (4) X=-0.10011,Y=-0.11010

答:(1)[X*Y]补 =1.1001001101 (2)[X*Y]补 =0.0111101110

23

4.6 分别使用原码恢复余数除法和原码加减交替除法计算X/Y: (5) X=0.0111,Y=0.1101 (6) X=0.1011,Y=-0.1110

答:(1)原码恢复余数除法: [Qs]原= 0.1000 ; [R]原=0.00001000

原码加减交替除法: [Qs]原= 0.1000; [R]原=0.00001000

(2)原码恢复余数除法: [Qs]原= 1.1100 ; [R]原=0.00001000

原码加减交替除法: [Qs]原= 1.1100 ; [R]原=0.00001000

4.7使用补码不恢复余数除法计算X/Y: (7) X=0.0111,Y=0.1101 (8) X=0.1011,Y=-0.1110

答:(1)[Qs]补= 0.1001; [R]补=0.00001110 (2)[Qs]补= 1.0011 ; [R]补=0.00001100

4.8设浮点数的格式为:阶码5位,尾数6位,均用补码表示,请计算X+Y和X-Y。(阶码和尾数均用补码计算)。 (9) X= -1.625,Y=5.25

24

(10) X=15/64,Y= -29/256

答:(1)X=-0.11010×20001, Y=0.10101×20011

[X+Y]补 =0,0010 0.11101; X+Y=0.11101×20010 [X-Y]补 =0,0011 1.00101; X-Y=-0.11011×20011 (2) X=-0.1111×2 - 0010, Y=0.11101×2 - 0011

[X+Y]补 =1,1101 0.11111; X+Y=0.11111×2 - 0011

[X-Y]补 =1,1111 0.10110; X-Y=0.10110×2 - 0001

4.9设浮点数的格式为:阶码5位,用移码表示,尾数6位,用补码表示,请计算X*Y和X/Y(阶码用移码计算,尾数用任何一种机器数的串行乘除算法计算)。 (11) X=5.25,Y= -1.625 (12) X= -29/256,Y=15/64

答:(1) [X×Y]浮=1,0100 1.01111; X*Y=-0.10001×20100

[X/Y]浮= 1,0010 1.00111; X/Y=-0.11001×20010

(2) [X×Y]浮=0,1011 1.00101; X*Y=-0.11011×2-0101

[X/Y]浮= 0,1111 1.00001; X/Y=-0.11111×2-0001

3.26 假设浮点数加减运算时,尾数采用变形补码(模4补码)

25

进行运算,运算结果形式为:MS1 MS2.M1 …… Mn,选择正确的答案写在横线上:

(1) 若尾数运算结果形式满足 条件时,结果需要左

规;

(2) 若尾数运算结果形式满足 条件时,结果需要右

规(1次);

(3) 若尾数运算结果形式满足 条件时,结果不需要

规格化; A.MS1MS2.M1=00.0

C.MS1MS2.M1=01.0

E.MS1MS2.M1=10.0 B.MS1MS2.M1=00.1

D.MS1MS2.M1=01.1

F.MS1MS2.M1=10.1

G.MS1MS2.M1=11.0 H.MS1MS2.M1=11.1

答:(1)A, H (2)D,E,F (3)B 3.27 浮点数运算的溢出判断,取决于 。 A.尾数是否上溢 C.阶码是否上溢 答:C

3.28 设[X]补=X0.X1……Xn,X必须满足 条件时,X左

26

B.尾数是否下溢 D.阶码是否下溢

移一位求2X时,才不会发生溢出。 A.X0.X1=0.0

B.X0.X1=1.1

C.X0.X1=0.1

D.X0.X1=1.0

答:A, B

3.29 设机器字长8位,若机器数DAH为补码,则算术左移一位

后为 ,算术右移一位后为 。 A.B4H 答:A, E

3.30 在计算机内,减法一般用 来实现。 A.二进制减法器 器 答:C

3.31 设某运算器由一个加法器Σ、两个暂存器A和B(D型边沿

寄存器)、一个状态寄存器、一个二选一多路选择器构成,如图4.29所示。加法器具有F=A、F=B和F=A+B这3种功能;A、B均可接收加法器的输出,A还可以接收外部输入数据D。问: (1) 描述外部数据D传送到暂存器B的过程,写出发送的信号序

列。

27

B.B5H C.F4H D.6DH E.EDH

B.十进制减法器 C.二进制加法

D.十进制加法器

(2) 如何实现操作A+B→A和A+B→B?写出发送的信号序列。 (3) 可以实现操作D+A→A和D+B→B吗?如果可以,请写出发

送的信号序列。

(4) 若A、B均为锁存器(电平触发的寄存器),那么实现操作A+B

→A和A+B→B时有问题吗?为什么?

FLAGSCPFΣ 加法器A→ΣCPAF=AF=BF=A+BB→ΣABCPBSD二选一

4.29 习题4.15图示

答:(1)传送过程:D A,A ∑ B。

控制信号:S=0(选D),CPA, A ∑,F=A,S=1(选∑) (2)A ∑,B ∑,F=A+B,S=1(选∑),CPA A ∑,B ∑,F=A+B,CPB

(3)S=0(选D),CPA, A ∑,B ∑,F=A+B,S=1(选∑),CPA

S=0(选D),CPA, A ∑,B ∑,F=A+B,CPB

28

(4)结果不对。加法器会多次运算。

3.32 如果将例4.12中的两条指令修改如下,试写出运算结果及其

标志位,并分析各标志的意义。 MOV AL,7FH ADD AL,80H 答:(AL)=FFH; ZF=0:因为运算结果非零;

CF=0:因为加法运算的最高位没产生进位,

OF=0:因为C1⊕Cf=0,表明有符号数运算发生没溢出, SF=1:因为运算结果的最高位为1,

PF=1:结果中“1”的个数为偶数个,所以PF=1。

3.33 如果将例4.12中的两条指令修改如下,试写出运算结果及其

标志位,并分析各标志的意义。 MOV AL,7FH SUB

AL,1

答:(AL)=7EH; ZF=0:因为运算结果非零;

CF=0:因为加法运算的最高位没产生借位,

29

OF=0:因为C1⊕Cf=0,表明有符号数运算发生没溢出, SF=0:因为运算结果的最高位为0,

PF=0:结果中“1”的个数为奇数个,所以PF=0。

第五章

5.1 说明主存储器的组成,并比较SRAM和DRAM有什么不同之处?为什么DRAM的地址一般要分两次接收? 略。

5.2 有一个64K×16位的存储器,由16K×1位的DRAM芯片(芯片内是128×128结构)构成,存储器读/写周期为500ns,问: (1)需要多少片DRAM芯片?

(2)采用异步刷新方式,如单元刷新间隔不超过2ms,则刷新信号周期是多少?

(3)如果用集中刷新方式,存储器刷新一遍最少用多少时间? 答:(1)64; (2)15.625微秒 (3)64微秒

5.3 某机字长16 位,CPU地址总线18位,数据总线16位,存储器按字编址,CPU 的控制信号线有:MREQ#(存储器访问请求,

30

低电平有效),R/W#(读写控制,低电平为写信号,高电平为读信号)。试问:

(1)该机可以配备的最大主存容量为 。 (2)该机主存采用64K×1bit的DRAM芯片(内部为4个128×128阵列)构成最大主存空间,则共需 个芯片;若采用异步刷新方式,单元刷新间隔为2ms,则刷新信号的周期为 。

(3)若为该机配备2K×16位的Cache,每块8字节,采用2路组相联映象,试写出对主存地址各个字段的划分(标出各个字段的位数);若主存地址为462EH,则该地址可映象到Cache的哪一组? (4)已知该机已有8K×16位的ROM存储器,地址处于主存的最高端;现在再用若干个16K×8位的SRAM芯片形成128K×16位的RAM存储区域,起始地址为00000H,假设SRAM芯片有CS#(片选,低电平有效)和WE#(写使能,低电平有效)信号控制端;试写出RAM、ROM的地址范围,并画出SRAM、ROM与CPU的连接图,请标明SRAM芯片个数、译码器的输入输出线、地址线、数据线、控制线及其连接。 答:(1)256KW

(2)64, 15.625微秒

31

(3) 高位字块标记(8位) 组地址(8位) 块内地址(2位)

(4)略

5.4 设有一个4体交叉存储器,在使用时经常遇到连续访问同一个存储体的情况,会产生怎样的结果? 答:存储器带宽降低。

5.5 某计算机的存储系统由Cache、主存和用于虚拟存储的磁盘组成。CPU总是从Cache中获取数据。若所访问的字在Cache中,则存取它只需要20ns,将所访问的字从主存装入Cache需要60ns,而将它从磁盘装入主存则需要1200?s。假定Cache的命中率为90%,主存的命中率为60%,计算该系统访问一个字的平均存取时间。 答:48.0098?s

5.6 CPU执行一段时间时,cache完成存取的次数为3900次,主存完成的存取次数为100次,已知cache的存储周期为40ns,主存的存储周期为240ns。求cache/主存系统的效率和平均访问时间? 答:e=3900/4000=97.5% Ta=45ns

5.7 某处理器包含一片内Cache,容量为8K字节,且采用4路

32

组相联结构,块的大小为4个32位字。当Cache未命中时,以分组方式从主存读取4个字到Cache,假定主存容量为16M字节。请说明:

(1)Cache共分多少组?

(2)写出主存的字节地址的格式,并说明地址格式中的不同字段的作用和位数; 答:(1) 128组;

(2) 高位字块标记(13位) 组地址(7位) 块内地址(4位)

5.8 计算机主存容量为256K字,Cache为8K字。主存与Cache之间按组相联映射,Cache的每组有4个行,每行有64个字。假设开始时Cache为空,CPU按顺序从主存地址为0,1,2,… ,8447单元执行“取“操作(不命中时,采用将主存中含有该字的块送入Cache后,再从Cache中把需要的字读出送CPU的方法),然后又重复执行20次。设Cache存取时间为主存的1/10。替换使用LRU算法,请计算上述操作总的存取时间与不用Cache相比,速度提高多少倍?

答:约4.965倍

5.9 简述虚拟存储器的含义和作用。

33

略。 习题六

6.1 指令包括哪几部分?各表示什么含意?

略。

6.2 在一地址指令、二地址指令中,如何指定二个操作数地址?

如何存放操作结果? 略。

6.3 简述指令操作码的扩展技术的基本方法。

略。

6.4 某机器字长16位,采用单字长指令,每个地址码6位。试采

用操作码扩展技术,设计14条二地址指令,80条一地址指令,60条零地址指令。请给出指令编码示意图。 1.(7分) ? 14条双地址指令:

操作码(4地址码A1(6地址位) 位) A2(6位) 码 操作码: 000000~001101

34

? 80条单地址指令:

地址码A(6操作码(10位) 位) 操作码:1110××××××(64条中可选择前63条) 1111××××××(64条中可选择前17条) ? 60条零地址指令:

操作码(16位) 操作码: 1111111111××××××(64条中选择60个编码即可)

其他编码方案,只要符合操作码扩展技术都可以 6.5 什么是指令字长?什么是机器字长?它们之间有何关系?

略:

6.6 确定寻址方式的目的是什么?

6.7 请说明间接寻址和直接寻址的不同。 略。

6.8 简述变址寻址和基址寻址的主要区别。

35

略。

6.9 单项选择题

(1)寄存器间接寻址方式中,操作数在( )中。

A. 程序计算器 B. 堆栈 C. 寄存器 D. 主存 答:D

(2)堆栈常用于( )。

A. 数据移位 B. 程序转移 C. 保护程序现场 D. 输入、输出 答:C

(3)单地址指令中,为了完成两个数的算术运算,除地址码指

明的一个操作数外,另一个数常需采用( )。

A.堆栈寻址 B. 立即寻址 C. 隐含寻址 D. 间接寻址 答:C

36

(4)用于对某个寄存器中操作数的寻址方式称为( )

A.直接寻址 B. 间接寻址 C. 寄存器直接寻址 D. 寄存器间接寻址

(5)指令中采用不同的寻址方式,其主要目的是( )。 A. 可以实现操作码的扩展 B. 实现存储程序和程序控制

C. 缩短指令长度、扩大寻址空间、提高编程的灵活性。 D. 降低指令译码的难度。 答:C

(6)指令寻址和数据寻址的不同在于( )。 A. 前者是访问存储器,后者是访问寄存器。 B. 前者是确定程序转移地址,后者取操作数。 C. 前者是确定程序顺序执行,后者是取操作数地址。 D. 前者是短指令,后者是长指令。

37

答:C

(7)变址寻址方式中,操作数的有效地址为( )。

A. 程序计数器的内容加上形式地址。 B. 基址寄存器的内容加上形式地址。

C. 变址寄存器的内容加上形式地址。 D. 变址寄存器的内容加上基址寄存器的内容 答:C

(8)CISC指令系统与RISC指令系统相比具有( )等特点。 A. 前者指令条数少,后者指令条数多。 B. 前者执行速度慢,后者执行速度快。

C. 前者有利于编译生成优化代码,后者不便于编译。 D. 前者指令功能简单,后者指令功能复杂。 答:A,D

38

6.10 某机16位字长指令格式如下:

OP M D 5位 3位 8位

其中:D是形式地址,采用补码表示(包括一位符号位); M是寻址方式 M=0 立即寻址;

M=1 直接寻址(这时D为地址,是无符号数); M=2 间接寻址;

M=3 变址寻址(变址寄存器RI,16位); M=4 基址寻址(基址寄存器Rb,16位); M=5相对寻址。

(1) 该指令格式最多可以定义多少种不同的操作?立即

寻址操作数范围是多少?

39

(2) 写出各种寻址方式的有效地址的计算表达式。 (3) 各种寻址方式时能访问的最大主存空间范围是多

少?

答:(1)32 , 0~255 (2)直接寻址:EA=D 间接寻址:EA=(D) 变址寻址:EA=(RI)+D 基址寻址:EA=(Rb)+D 相对寻址:EA=(PC)+D (3)直接寻址:0~255

间接寻址:0~255(设存储器长度为8位,且只能取一个字节)

变址寻址:0~16K-1 基址寻址:0~16K-1

40

相对寻址:当前指令地址的-128~+127

6.11 一个较完整的指令系统应该包括哪些类型的指令? 略

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

和寻址方式,第二个字节是相对偏移量,用补码表示。若当前转移指令的第一字节所在地址为0019H,且CPU每取出一个字节指令便会自动执行(PC)+1→PC操作。请问当转移地址分别为 0006H和0025H时,相对转移指令第二字节的内容是什么? 答:EBH, 0AH.

6.13 某机器内共有16个32位的通用寄存器,设计一种有60种操

作,8种寻址方式的指令系统。假设指令字长等于机器字长,机器字长为32位,请回答:

41

(1)若主存可直接寻址或间接寻址,采用“寄存器-存储器”型指令,能寻址最大存储空间是多少?画出指令格式并说明各字段的含意。

(2)若采用通用寄存器作基址寄存器,则“寄存器-存储器”型指

令的指令格式是怎样? 能寻址最大存储空间是多少? 答:(1)219; 操作码(6位) 寻址方式(3位) 寄存器(4位) 地址A(19位) (2) 操作码(6位) 寻址方式(3位) 寄存器(4位) 地址A(19位) 232

6.14 什么叫堆栈?它的操作特点是什么?堆栈主要用在哪里?

略。

6.15 简述RISC的主要优缺点。 略

6.16 设某机寄存器字长16位,用16进制表示,已知:变址寄

存器内容为0004H,PC的内容为0003H,内存中部分单元内容如下:

42

地址:内容 地址:内容 0002H:000AH 0007H:000AH 0003H:0002H 0008H:0002H 0004H:0007H 0009H:0003H 0005H:0004H 000AH:0009H 0006H:0005H 000BH:0008H

指令为双字长指令,格式如下:

操作码,寻址方式码,寄存器号(16位) 直接地址/间接地址/立即数/相对位移量/形式地址(16位) 若当前指令分别为下列寻址方式时,试求出操作

数填入下表。

寻址方式 直接 间接 立即 变址 操作数 答:000AH, 0009H, 0007H, 0008H

43

习题8

1. 简述外设的编址方式,并比较它们的优缺点。 略

2. 当控制器执行访存指令和I/O指令时,发出的读写控制信号有何不同?

答:访存指令发出存储器请求信号或存储器读写信号,访I/O指令发出I/O请求信号。或I/O读写信号。

3. 为何要在CPU和外设之间设置一个接口?简述接口的功能和组成。 略

4. 主机和外设交换信息的方式有哪几种?简述各自的工作原理和特点。 略

5. CPU与外设接口交换信息的方式有以下几种,其中 A 下,CPU被外设独占,而 B 下支持CPU与外设并行工作,并且可以用于突发事件的处理; C 用于高速、大批量的数据传送,并由硬件实现。

A. 程序查询方式 B. 程序中断方式

44

C. DMA方式 D. 并行传送 E. 串行传送

答:(1) A , (2) B , (3) C

6. 程序中断方式与DMA方式有何异同? 略

7. 何谓中断?简述中断的全部过程。 略

8. 简要说明中断请求线的几种传送方式,并对比它们的优缺点。 略

9. 什么是中断屏蔽字?简述中断屏蔽技术的作用。 略

10. 什么是中断嵌套?它解决了什么问题?如何才能实现中断嵌套? 略

11. 中断源可以分为哪几类?各自有何特点? 略

12. 有哪几种中断优先级排队方法?比较它们的优缺点。

45

13. 解释下列名词:

(1)中断向量 (2)中断隐指令 (3)DMA (4)通道 (5)多重中断 (6)单重中断 (7)中断类型号 (8)菊花链电路 略

14. 假设有4个中断源A、B、C、D,硬件排队后,中断优先级从高到低依次为A→B→C→D。现在需要将4个中断源得到CPU响应的次序更改为C→A→D→B,写出各个中断源的中断服务程序中应该设置的中断屏蔽字。 ? 习题九 9.1 略 9.2 略

9.3 总线的技术指标有哪些?总线带宽表示什么? 略

46

总线有哪些特性?其中电气特性是什么?

总线有哪些类型?各种类型有何特点?

9.4 何谓系统总线?单总线结构有何优缺点?查找一种现代计算机

的多总线例子,说明其结构和原理。 略 9.5

总线信息传送方式有哪几种,它们各有何优缺点?它们各

适用于何种情况? 略 9.6

设总线工作频率为33MHz,如果一个总线周期中并行传送

32位数据,则总线的带宽是多少? 答:32/8 ×33×106=126MB/秒 9.7

在异步串行传输中,字符格式为:1个起始位、7位数据位、

1位校验位、1个终止位。若要求每秒传输240个字符,则需要传输的波特率是多少? 答:2400 9.8

为何要进行总线仲裁?集中式总线仲裁方式分为哪几种?

各有何优缺点? 略 9.9

为何要进行总线定时?总线定时有哪几种方式?各有何特

点?一般适用于哪些场合? 略

47

9.10 PCI总线的主要优点是什么?一般什么样的设备挂接在PCA总线上? 略

9.11 选择题

(1)系统总线中地址线的功能是( )

A. 用于寻址I/O单元 B. 用于传输数据 C. 用于选择主存单元 D. 用于传送选择主存单元和I/O接口的地址 答:D

(2)数据总线的宽度由总线的( )定义。 A. 电气特性 B. 物理特性 C. 机械特性 C. 功能特性 答:C

(3)( )的总线利用率最高;( )的总线吞吐量最高。 A. 双总线结构 B. 单总线结构 C.串行总线 D. 多总线结构 答:B, D

(4)在总线分布式仲裁方式中,( )所需要的连线最少,( )仲裁结果不可预测。

48

A. 自举分布式仲裁方式 B. 冲突检测分布式仲裁方式

C. 并行竞争仲裁方式 D. 独立请求仲裁方式 答:A ,B

(5)在单机系统中,( )总线结构的访问外设与访问主存单元一样。

A. 双总线结构 B. 单总线结构 C. 多总线结构 D. 三总线结构 答:B

(6)下列( )信息传输应采用异步定时方式。

A. CPU与存储器 B. CPU与I/O接口 C. CPU与PCI总线 D. I/0接口与I/O接口 答:B

(7)关于ISA总线的下列描述中错误的是( )。 A. ISA总线是在原先的PC/XT总线的基础上扩充的。 B. 主存寻址空间为16MB,I/O寻址空间为64KB;可进行8位或16位数据访问。

49

C. 地址线和数据线分时复用,支持无限猝发式数据传输。 D. 它支持存储器读/写、I/O读/写、中断响应、DMA响应、存储器刷新、总线仲裁。 答:C

(8)关于PCI总线的下列叙述中不正确的是( ) A. PCI总线是一种与具体CPU无关的高速外围总线。 B.PCI总线可以将CPU与外部设备相连。

C. PCI总线的地址线和数据线分时复用,支持无限猝发式数据传输。

D. PCI总线采用集中式仲裁方式。 答:A

(9)关于RS-232C和RS-485总线的下列描述中错误的是( )。 A. RS-232C是一种串行通信接口的电气标准。 B. RS-232C的信号线采用负逻辑电压。 C. RS-485与RS-232C最长传输距离相同。

D. RS-4385采用平衡发送和差分接收,具有抑制共模干扰的能力。 答:C

50