计算机组成原理答案

更新时间:2023-01-04 08:27:14 阅读: 评论:0


2023年1月4日发(作者:韩田鹿)

1/1

计算机组成原理复习题答案

习题集和解析

第一章计算机系统概论

1.什么是计算机系统、计算机硬件和计算机软件?硬件和软件

哪个更重要?

解:P3

计算机系统:由计算机硬件系统和软件系统组成的综合体。

计算机硬件:指计算机中的电子线路和物理装置。

计算机软件:计算机运行所需的程序及相关资料。

硬件和软件在计算机系统中相互依存,缺一不可,因此同样

重要。

5.冯•诺依曼计算机的特点是什么?

解:冯•诺依曼计算机的特点是:P8

计算机由运算器、控制器、存储器、输入设备、输出设备

五大部件组成;

指令和数据以同同等地位存放于存储器内,并可以按地址

访问;

指令和数据均用二进制表示;

指令由操作码、地址码两大部分组成,操作码用来表示操

1/1

作的性质,地址码用来表示操作数在存储器中的位置

指令在存储器中顺序存放,通常自动顺序取出执行;

机器以运算器为中心(原始冯•诺依曼机)。

7.解释下列概念:

主机、CPU、主存、存储单元、存储元件、存储基元、存储元、

存储字、存储字长、存储容量、机器字长、指令字长。

解:P9-10

主机:是计算机硬件的主体部分,由CPU和主存储器MM合

成为主机。

CPU:中央处理器,是计算机硬件的核心部件,由运算器和

控制器组成;(早期的运算器和控制器不在同一芯片上,现在的

CPU内除含有运算器和控制器外还集成了CACHE)。

主存:计算机中存放正在运行的程序和数据的存储器,为

计算机的主要工作存储器,可随机存取;由存储体、各种逻辑部

件及控制电路组成。

存储单元:可存放一个机器字并具有特定存储地址的存储

单位。

存储元件:存储一位二进制信息的物理元件,是存储器中

最小的存储单位,又叫存储基元或存储元,不能单独存取。

存储字:一个存储单元所存二进制代码的逻辑单位。

存储字长:一个存储单元所存二进制代码的位数。

存储容量:存储器中可存二进制代码的总量;(通常主、辅

存容量分开描述)。

机器字长:指CPU一次能处理的二进制数据的位数,通常

与CPU的寄存器位数有关。

指令字长:一条指令的二进制代码位数。

8.解释下列英文缩写的中文含义:

CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、I/O、MIPS、

CPI、FLOPS

解:全面的回答应分英文全称、中文名、功能三部分。

CPU:CentralProcessingUnit,中央处理机(器),是计

算机硬件的核心部件,主要由运算器和控制器组成。

PC:ProgramCounter,程序计数器,其功能是存放当前欲

执行指令的地址,并可自动计数形成下一条指令地址。

IR:InstructionRegister,指令寄存器,其功能是存放

当前正在执行的指令。

CU:ControlUnit,控制单元(部件),为控制器的核心部

件,其功能是产生微操作命令序列。

ALU:ArithmeticLogicUnit,算术逻辑运算单元,为运

算器的核心部件,其功能是进行算术、逻辑运算。

ACC:Accumulator,累加器,是运算器中既能存放运算前

的操作数,又能存放运算结果的寄存器。

MQ:Multiplier-QuotientRegister,乘商寄存器,乘法

运算时存放乘数、除法时存放商的寄存器。

X:此字母没有专指的缩写含义,可以用作任一部件名,在

此表示操作数寄存器,即运算器中工作寄存器之一,用来存放操

作数;

MAR:MemoryAddressRegister,存储器地址寄存器,在

主存中用来存放欲访问的存储单元的地址。

MDR:MemoryDataRegister,存储器数据缓冲寄存器,在

主存中用来存放从某单元读出、或要写入某存储单元的数据。

I/O:Input/Outputequipment,输入/输出设备,为输入

设备和输出设备的总称,用于计算机内部和外界信息的转换与传

送。

MIPS:MillionInstructionPerSecond,每秒执行百万

条指令数,为计算机运算速度指标的一种计量单位。

9.画出主机框图,分别以存数指令“STAM”和加法指令“ADDM”

(M均为主存地址)为例,在图中按序标出完成该指令(包括取

指令阶段)的信息流程(如→①)。假设主存容量为256M*32位,

在指令字长、存储字长、机器字长相等的条件下,指出图中各寄

存器的位数。

解:主机框图如P13图1.11所示。

(1)STAM指令:PC→MAR,MAR→MM,MM→MDR,MDR→

IR,

OP(IR)→CU,Ad(IR)→MAR,ACC→MDR,

MAR→MM,WR

(2)ADDM指令:PC→MAR,MAR→MM,MM→MDR,MDR→IR,

OP(IR)→CU,Ad(IR)→MAR,RD,MM

→MDR,MDR→X,ADD,ALU→ACC,ACC→MDR,WR

假设主存容量256M*32位,在指令字长、存储字长、机器字

长相等的条件下,ACC、X、IR、MDR寄存器均为32位,PC和MAR

寄存器均为28位。

10.指令和数据都存于存储器中,计算机如何区分它们?

解:计算机区分指令和数据有以下2种方法:

通过不同的时间段来区分指令和数据,即在取指令阶段

(或取指微程序)取出的为指令,在执行指令阶段(或相应微程

序)取出的即为数据。

通过地址来源区分,由PC提供存储单元地址的取出的是指

令,由指令地址码部分提供存储单元地址的取出的是操作数。

第2章计算机的发展及应用

1.通常计算机的更新换代以什么为依据?

答:P22

主要以组成计算机基本电路的元器件为依据,如电子管、晶

体管、集成电路等。

2.举例说明专用计算机和通用计算机的区别。

答:按照计算机的效率、速度、价格和运行的经济性和实用性可

以将计算机划分为通用计算机和专用计算机。通用计算机适应性

强,但牺牲了效率、速度和经济性,而专用计算机是最有效、最

经济和最快的计算机,但适应性很差。例如个人电脑和计算器。

3.什么是摩尔定律?该定律是否永远生效?为什么?

答:P23,否,P36

第3章系统总线

1.什么是总线?总线传输有何特点?为了减轻总线负载,总线

上的部件应具备什么特点?

答:P41.总线是多个部件共享的传输部件。

总线传输的特点是:某一时刻只能有一路信息在总线上传

输,即分时使用。

为了减轻总线负载,总线上的部件应通过三态驱动缓冲电路

与总线连通。

4.为什么要设置总线判优控制?常见的集中式总线控制有几

种?各有何特点?哪种方式响应时间最快?哪种方式对电路故

障最敏感?

答:总线判优控制解决多个部件同时申请总线时的使用权分配问

题;

常见的集中式总线控制有三种:链式查询、计数器定时查询、

独立请求;

特点:链式查询方式连线简单,易于扩充,对电路故障最敏

感;计数器定时查询方式优先级设置较灵活,对故障不敏感,连

线及控制过程较复杂;独立请求方式速度最快,但硬件器件用量

大,连线多,成本较高。

5.解释下列概念:总线宽度、总线带宽、总线复用、总线的主

设备(或主模块)、总线的从设备(或从模块)、总线的传输周期

和总线的通信控制。

答:P46。

总线宽度:通常指数据总线的根数;

总线带宽:总线的数据传输率,指单位时间内总线上传输数

据的位数;

总线复用:指同一条信号线可以分时传输不同的信号。

总线的主设备(主模块):指一次总线传输期间,拥有总线

控制权的设备(模块);

总线的从设备(从模块):指一次总线传输期间,配合主设

备完成数据传输的设备(模块),它只能被动接受主设备发来的

命令;

总线的传输周期:指总线完成一次完整而可靠的传输所需时

间;

总线的通信控制:指总线传送过程中双方的时间配合方式。

6.试比较同步通信和异步通信。

答:同步通信:指由统一时钟控制的通信,控制方式简单,灵活

性差,当系统中各部件工作速度差异较大时,总线工作效率明显

下降。适合于速度差别不大的场合。

异步通信:指没有统一时钟控制的通信,部件间采用应答方

式进行联系,控制方式较同步复杂,灵活性高,当系统中各部件

工作速度差异较大时,有利于提高总线工作效率。

8.为什么说半同步通信同时保留了同步通信和异步通信的特

点?

答:半同步通信既能像同步通信那样由统一时钟控制,又能像异

步通信那样允许传输时间不一致,因此工作效率介于两者之间。

10.为什么要设置总线标准?你知道目前流行的总线标准有哪

些?什么叫plugandplay?哪些总线有这一特点?

答:总线标准的设置主要解决不同厂家各类模块化产品的兼容问

题;

目前流行的总线标准有:ISA、EISA、PCI等;

plugandplay:即插即用,EISA、PCI等具有此功能。

11.画一个具有双向传输功能的总线逻辑图。

答:在总线的两端分别配置三态门,就可以使总线具有双向传输

功能。

a0

a1

anbn

b1

b0

a至bb至a

12.设数据总线上接有A、B、C、D四个寄存器,要求选用合适

的74系列芯片,完成下列逻辑设计:

(1)设计一个电路,在同一时间实现D→A、D→B和D→C寄存

器间的传送;

(2)设计一个电路,实现下列操作:

T0时刻完成D→总线;

T1时刻完成总线→A;

T2时刻完成A→总线;

T3时刻完成总线→B。

解:(1)由T打开三态门将D寄存器中的内容送至总线bus,由

cp脉冲同时将总线上的数据打入到A、B、C寄存器中。T和cp

的时间关系如图(1)所示。

ABC

cp脉冲

总线bus

三态门

D

T

T

cp

图(1)

(2)三态门1受T0+T1控制,以确保T0时刻D→总线,

以及T1时刻总线→接收门1→A。三态门2受T2+T3控制,以

确保T2时刻A→总线,以及T3时刻总线→接收门2→B。T0、T1、

T2、T3波形图如图(2)所示。

图(2)

第四章

3.存储器的层次结构主要体现在什么地方?为什么要分这些层

次?计算机如何管理这些层次?

答:存储器的层次结构主要体现在Cache-主存和主存-辅存这两

个存储层次上。

Cache-主存层次在存储系统中主要对CPU访存起加速作用,

即从整体运行的效果分析,CPU访存速度加快,接近于Cache的

速度,而寻址空间和位价却接近于主存。

主存-辅存层次在存储系统中主要起扩容作用,即从程序员

的角度看,他所使用的存储器其容量和位价接近于辅存,而速度

接近于主存。

综合上述两个存储层次的作用,从整个存储系统来看,就达

到了速度快、容量大、位价低的优化效果。

主存与CACHE之间的信息调度功能全部由硬件自动完成。而

主存与辅存层次的调度目前广泛采用虚拟存储技术实现,即将主

存与辅存的一部分通过软硬结合的技术组成虚拟存储器,程序员

可使用这个比主存实际空间(物理地址空间)大得多的虚拟地址

空间(逻辑地址空间)编程,当程序运行时,再由软、硬件自动

配合完成虚拟地址空间与主存实际物理空间的转换。因此,这两

个层次上的调度或转换操作对于程序员来说都是透明的。

4.说明存取周期和存取时间的区别。

解:存取周期和存取时间的主要区别是:存取时间仅为完成一次

操作的时间,而存取周期不仅包含操作时间,还包含操作后线路

的恢复时间。即:

存取周期=存取时间+恢复时间

5.什么是存储器的带宽?若存储器的数据总线宽度为32位,存

取周期为200ns,则存储器的带宽是多少?

解:存储器的带宽指单位时间内从存储器进出信息的最大数量。

存储器带宽=1/200ns×32位=160M位/秒=20MB/秒=5M

字/秒

注意:字长32位,不是16位。(注:1ns=10-9s)

6.某机字长为32位,其存储容量是64KB,按字编址它的寻址

范围是多少?若主存以字节编址,试画出主存字地址和字节地址

的分配情况。

解:存储容量是64KB时,按字节编址的寻址范围就是64K,如

按字编址,其寻址范围为:

64K/(32/8)=16K

主存字地址和字节地址的分配情况:(略)。

7.一个容量为16K×32位的存储器,其地址线和数据线的总和

是多少?当选用下列不同规格的存储芯片时,各需要多少片?

1K×4位,2K×8位,4K×4位,16K×1位,4K×8位,8K×8

解:地址线和数据线的总和=14+32=46根;

选择不同的芯片时,各需要的片数为:

1K×4:(16K×32)/(1K×4)=16×8=128片

2K×8:(16K×32)/(2K×8)=8×4=32片

4K×4:(16K×32)/(4K×4)=4×8=32片

16K×1:(16K×32)/(16K×1)=1×32=32片

4K×8:(16K×32)/(4K×8)=4×4=16片

8K×8:(16K×32)/(8K×8)=2×4=8片

8.试比较静态RAM和动态RAM。

答:略。(参看课件)

9.什么叫刷新?为什么要刷新?说明刷新有几种方法。

解:刷新:对DRAM定期进行的全部重写过程;

刷新原因:因电容泄漏而引起的DRAM所存信息的衰减需要及

时补充,因此安排了定期刷新操作;

常用的刷新方法有三种:集中式、分散式、异步式。

集中式:在最大刷新间隔时间内,集中安排一段时间进行刷

,存在CPU访存死时间。

分散式:在每个读/写周期之后插入一个刷新周期,无CPU访

存死时间。

异步式:是集中式和分散式的折衷。

10.半导体存储器芯片的译码驱动方式有几种?

解:半导体存储器芯片的译码驱动方式有两种:线选法和重合法。

线选法:地址译码信号只选中同一个字的所有位,结构简单,

费器材;

重合法:地址分行、列两部分译码,行、列译码线的交叉点

即为所选单元。这种方法通过行、列译码信号的重合来选址,也

称矩阵译码。可大大节省器材用量,是最常用的译码驱动方式。

11.一个8K×8位的动态RAM芯片,其内部结构排列成256×256

形式,存取周期为0.1μs。试问采用集中刷新、分散刷新和异

步刷新三种方式的刷新间隔各为多少?

解:采用分散刷新方式刷新间隔为:2ms,其中刷新死时间为:

256×0.1μs=25.6μs

采用分散刷新方式刷新间隔为:256×(0.1μs+×0.1μs)

=51.2μs

采用异步刷新方式刷新间隔为:2ms

12.画出用1024×4位的存储芯片组成一个容量为64K×8位的

存储器逻辑框图。要求将64K分成4个页面,每个页面分16组,

指出共需多少片存储芯片。

解:设采用SRAM芯片,则:

总片数=(64K×8位)/(1024×4位)=64×2=128

题意分析:本题设计的存储器结构上分为总体、页面、组三

级,因此画图时也应分三级画。首先应确定各级的容量:

页面容量=总容量/页面数=64K×8/4=16K×8位,

4片16K×8字串联成64K×8位

组容量=页面容量/组数=16K×8位/16=1K×8

位,16片1K×8位字串联成16K×8位

组内片数=组容量/片容量=1K×8位/1K×4位=2

片,两片1K×4位芯片位并联成1K×8位

存储器逻辑框图:(略)。

13.设有一个64K×8位的RAM芯片,试问该芯片共有多少个基

本单元电路(简称存储基元)?欲设计一种具有上述同样多存储

基元的芯片,要求对芯片字长的选择应满足地址线和数据线的总

和为最小,试确定这种芯片的地址线和数据线,并说明有几种解

答。

解:存储基元总数=64K×8位=512K位=219位;

思路:如要满足地址线和数据线总和最小,应尽量把存储元

安排在字向,因为地址位数和字数成2的幂的关系,可较好地压

缩线数。

解:设地址线根数为a,数据线根数为b,则片容量为:2a×b=

219;b=219-a;

若a=19,b=1,总和=19+1=20;

a=18,b=2,总和=18+2=20;

a=17,b=4,总和=17+4=21;

a=16,b=8,总和=16+8=24;

…………

由上可看出:片字数越少,片字长越长,引脚数越多。片

字数减1、片位数均按2的幂变化。

结论:如果满足地址线和数据线的总和为最小,这种芯片

的引脚分配方案有两种:地址线=19根,数据线=1根;或地

址线=18根,数据线=2根。

14.某8位微型机地址码为18位,若使用4K×4位的RAM芯片

组成模块板结构的存储器,试问:

(1)该机所允许的最大主存空间是多少?

(2)若每个模块板为32K×8位,共需几个模块板?

(3)每个模块板内共有几片RAM芯片?

(4)共有多少片RAM?

(5)CPU如何选择各模块板?

解:(1)该机所允许的最大主存空间是:218×8位=256K×8

位=256KB

(2)模块板总数=256K×8/32K×8=8块

(3)板内片数=32K×8位/4K×4位=8×2=16片

(4)总片数=16片×8=128片

(5)CPU通过最高3位地址译码输出选择模板,次高3位地

址译码输出选择芯片。地址格式分配如下:

模板号(3位)芯片号(3位)片内地址(12位)

15.设CPU共有16根地址线,8根数据线,并用MREQ(低电平

有效)作访存控制信号,W/R作读写命令信号(高电平为读,低

电平为写)。现有下列存储芯片:ROM(2K×8位,4K×4位,8K×8

位),RAM(1K×4位,2K×8位,4K×8位),及74138译码器和

其他门电路(门电路自定)。试从上述规格中选用合适芯片,画

出CPU和存储芯片的连接图。要求:

(1)最小4K地址为系统程序区,4096~16383地址范围为用

户程序区;

(2)指出选用的存储芯片类型及数量;

(3)详细画出片选逻辑。

解:(1)地址空间分配图:

系统程序区(ROM共4KB):0000H-0FFFH

用户程序区(RAM共12KB):1000H-FFFFH

(2)选片:ROM:选择4K×4位芯片2片,位并联

RAM:选择4K×8位芯片3片,字串联

(RAM1地址范围为:1000H-1FFFH,RAM2地址范围为2000H-2FFFH,

RAM3地址范围为:3000H-3FFFH)

(3)各芯片二进制地址分配如下:

A1

5

A1

4

A1

3

A1

2

A1

1

A1

0

A

9

A

8

A

7

A

6

A

5

A

4

A

3

A

2

A

1

A

0

ROM1

,2

0000

1111

RAM10000

1111

RAM20000

1111

RAM30000

1111

CPU和存储器连接逻辑图及片选逻辑如下图(3)所示:

CPU

ROM1RAM1RAM2RAM3

74138

ROM2

D0

D3

D4

D7

R/W

A11

A0

0Y

1Y

2Y

3Y

7Y

A15

A14

A13

A12

MREQ

A2G

B2G

1G

A

B

C

PROG/PD

OE

CSCS

CS

OE

......

...

...

...............

...

.

.

.

.

.

.

.

.

.

图(3)

假设同上题,现有8片8K×8位的RAM芯片与CPU相连,

试回答:

(1)用74138译码器画出CPU与存储芯片的连接图;

(2)写出每片RAM的地址范围;

(3)如果运行时发现不论往哪片RAM写入数据后,以A000H

为起始地址的存储芯片都有与其相同的数据,分析故障原因。

(4)根据(1)的连接图,若出现地址线A13与CPU断线,

并搭接到高电平上,将出现什么后果?

解:(1)CPU与存储器芯片连接逻辑图:

CPU

RAM0

74138

RAM1

D0

D7

A12

A0

0Y

1Y

2Y

7Y

A15

A14

A13

MREQ

A2G

B2G

1G

A

B

C

CSCS

CS...

...

...

.........

...

.

.

.

.

.

.

RAM7

...

.

.

.

W/R

WEWEWE

+5V

(2)地址空间分配图:

RAM0:0000H-1FFFH

RAM1:2000H-3FFFH

RAM2:4000H-5FFFH

RAM3:6000H-7FFFH

RAM4:8000H-9FFFH

RAM5:A000H-BFFFH

RAM6:C000H-DFFFH

RAM7:E000H-FFFFH

(3)如果运行时发现不论往哪片RAM写入数据后,以A000H

为起始地址的存储芯片(RAM5)都有与其相同的数据,则根本的故

障原因为:该存储芯片的片选输入端很可能总是处于低电平。假

设芯片与译码器本身都是好的,可能的情况有:

1)该片的-CS端与-WE端错连或短路;

2)该片的-CS端与CPU的-MREQ端错连或短路;

3)该片的-CS端与地线错连或短路。

(4)如果地址线A13与CPU断线,并搭接到高电平上,将

会出现A13恒为“1”的情况。此时存储器只能寻址A13=1的地

址空间(奇数片),A13=0的另一半地址空间(偶数片)将永远访

问不到。若对A13=0的地址空间(偶数片)进行访问,只能错误

地访问到A13=1的对应空间(奇数片)中去。

17.写出1100、1101、1110、1111对应的汉明码。

解:有效信息均为n=4位,假设有效信息用b4b3b2b1表示

校验位位数k=3位,(2k>=n+k+1)

设校验位分别为c1、c2、c3,则汉明码共4+3=7位,即:

c1c2b4c3b3b2b1

校验位在汉明码中分别处于第1、2、4位

c1=b4⊕b3⊕b1

c2=b4⊕b2⊕b1

c3=b3⊕b2⊕b1

当有效信息为1100时,c3c2c1=011,汉明码为1110100。

当有效信息为1101时,c3c2c1=100,汉明码为0011101。

当有效信息为1110时,c3c2c1=101,汉明码为1011110。

当有效信息为1111时,c3c2c1=010,汉明码为0110111。

18.已知收到的汉明码(按配偶原则配置)为1100100、1100111、

1100000、1100001,检查上述代码是否出错?第几位出错?

解:假设接收到的汉明码为:c1’c2’b4’c3’b3’b2’b1’

纠错过程如下:

P1=c1’⊕b4’⊕b3’⊕b1’

P2=c2’⊕b4’⊕b2’⊕b1’

P3=c3’⊕b3’⊕b2’⊕b1’

如果收到的汉明码为1100100,则p3p2p1=011,说明代码有

错,第3位(b4’)出错,有效信息为:1100

如果收到的汉明码为1100111,则p3p2p1=111,说明代码有

错,第7位(b1’)出错,有效信息为:0110

如果收到的汉明码为1100000,则p3p2p1=110,说明代码有

错,第6位(b2’)出错,有效信息为:0010

如果收到的汉明码为1100001,则p3p2p1=001,说明代码有

错,第1位(c1’)出错,有效信息为:0001

22.某机字长16位,常规的存储空间为64K字,若想不改用其

他高速的存储芯片,而使访存速度提高到8倍,可采取什么措

施?画图说明。

解:若想不改用高速存储芯片,而使访存速度提高到8倍,可采

取八体交叉存取技术,8体交叉访问时序如下图:

单体访存周期

启动存储体0

启动存储体1

启动存储体2

启动存储体3

启动存储体4

启动存储体5

启动存储体6

启动存储体7

18.什么是“程序访问的局部性”?存储系统中哪一级采用了

程序访问的局部性原理?

解:程序运行的局部性原理指:在一小段时间内,最近被访问过

的程序和数据很可能再次被访问;在空间上,这些被访问的程序

和数据往往集中在一小片存储区;在访问顺序上,指令顺序执行

比转移执行的可能性大(大约5:1)。存储系统中Cache—主存

层次采用了程序访问的局部性原理。

做在CPU芯片内有什么好处?将指令Cache和数据

Cache分开又有什么好处?

答:Cache做在CPU芯片内主要有下面几个好处:

1)可提高外部总线的利用率。因为Cache在CPU芯片内,

CPU访问Cache时不必占用外部总线。

2)Cache不占用外部总线就意味着外部总线可更多地支持

I/O设备与主存的信息传输,增强了系统的整体效率。

3)可提高存取速度。因为Cache与CPU之间的数据通路大

大缩短,故存取速度得以提高。

将指令Cache和数据Cache分开有如下好处:

1)可支持超前控制和流水线控制,有利于这类控制方式下

指令预取操作的完成。

2)指令Cache可用ROM实现,以提高指令存取的可靠性。

3)数据Cache对不同数据类型的支持更为灵活,既可支持

整数(例32位),也可支持浮点数据(如64位)。

补充:

Cache结构改进的第三个措施是分级实现,如二级缓存结构,

即在片内Cache(L1)和主存之间再设一个片外Cache(L2),片

外缓存既可以弥补片内缓存容量不够大的缺点,又可在主存与片

内缓存间起到平滑速度差的作用,加速片内缓存的调入调出速

度。

30.一个组相连映射的CACHE由64块组成,每组内包含4块。

主存包含4096块,每块由128字组成,访存地址为字地址。试

问主存和高速存储器的地址各为几位?画出主存地址格式。

解:cache组数:64/4=16,Cache容量为:64*128=213字,cache

地址13位

主存共分4096/16=256区,每区16块

主存容量为:4096*128=219字,主存地址19位,地址格式如

下:

主存字块标记(8位)组地址(4位)字块内地址(7位)

第六章

12.设浮点数格式为:阶码5位(含1位阶符),尾数11位(含

1位数符)。写出51/128、-27/1024所对应的机器数。要求如下:

(1)阶码和尾数均为原码。

(2)阶码和尾数均为补码。

(3)阶码为移码,尾数为补码。

解:据题意画出该浮点数的格式:

阶符1

阶码4位数符1

尾数10位

将十进制数转换为二进制:x1=51/128=0.0110011B=

2-1*0.110011B

x2=-27/1024=

-0.B=2-5*(-0.11011B)

则以上各数的浮点规格化数为:

(1)[x1]浮=1,0001;0.1100110000

[x2]浮=1,0101;1.1101100000

(2)[x1]浮=1,1111;0.1100110000

[x2]浮=1,1011;1.

(3)[x1]浮=0,1111;0.1100110000

[x2]浮=0,1011;1.

16.设机器数字长为16位,写出下列各种情况下它能表示的数

的范围。设机器数采用一位符号位,答案均用十进制表示。

(1)无符号数;

(2)原码表示的定点小数。

(3)补码表示的定点小数。

(4)补码表示的定点整数。

(5)原码表示的定点整数。

(6)浮点数的格式为:阶码6位(含1位阶符),尾数

10位(含1位数符)。分别写出其正数和负数的表示范围。

(7)浮点数格式同(6),机器数采用补码规格化形式,

分别写出其对应的正数和负数的真值范围。

解:(1)无符号整数:0——216-1,即:0——65535;

无符号小数:0——1-2-16,即:0——0.99998;

(2)原码定点小数:-1+2-15——1-2-15,即:-0.99997—

—0.99997

(3)补码定点小数:-1——1-2-15,即:-1——0.99997

(4)补码定点整数:-215——215-1,即:-32768——32767

(5)原码定点整数:-215+1——215-1,即:-32767——

32767

(6)据题意画出该浮点数格式,当阶码和尾数均采用原

码,非规格化数表示时:

最大负数=1,11111;1.000000001,即-2-92-31

最小负数=0,11111;1.111111111,即-(1-2-9)231

则负数表示范围为:-(1-2-9)231——-2-92-31

最大正数=0,11111;0.111111111,即(1-2-9)231

最小正数=1,11111;0.000000001,即2-92-31

则正数表示范围为:2-92-31——(1-2-9)231

(7)当机器数采用补码规格化形式时,若不考虑隐藏位,则

最大负数=1,00000;1.011111111,即-2-12-32

最小负数=0,11111;1.000000000,即-1231

则负数表示范围为:-1231——-2-12-32

最大正数=0,11111;0.111111111,即(1-2-9)231

最小正数=1,00000;0.100000000,即2-12-32

则正数表示范围为:2-12-32——(1-2-9)231

17.设机器数字长为8位(包括一位符号位),对下列各机器数

进行算术左移一位、两位,算术右移一位、两位,讨论结果是否

正确。

[x1]原=0.0011010;[y1]补=0.1010100;[z1]反=1.010

1111;

[x2]原=1.1101000;[y2]补=1.1101000;[z2]反=1.110

1000;

[x3]原=1.0011001;[y3]补=1.0011001;[z3]反=1.001

1001。

解:算术左移一位:

[x1]原=0.0110100;正确

[x2]原=1.1010000;溢出(丢1)出错

[x3]原=1.0110010;正确

[y1]补=0.0101000;溢出(丢1)出错

[y2]补=1.1010000;正确

[y3]补=1.0110010;溢出(丢0)出错

[z1]反=1.1011111;溢出(丢0)出错

[z2]反=1.1010001;正确

[z3]反=1.0110011;溢出(丢0)出错

算术左移两位:

[x1]原=0.1101000;正确

[x2]原=1.0100000;溢出(丢11)出错

[x3]原=1.1100100;正确

[y1]补=0.1010000;溢出(丢10)出错

[y2]补=1.0100000;正确

[y3]补=1.1100100;溢出(丢00)出错

[z1]反=1.0111111;溢出(丢01)出错

[z2]反=1.0100011;正确

[z3]反=1.1100111;溢出(丢00)出错

算术右移一位:

[x1]原=0.0001101;正确

[x2]原=1.0110100;正确

[x3]原=1.0001100(1);丢1,产生误差

[y1]补=0.0101010;正确

[y2]补=1.1110100;正确

[y3]补=1.1001100(1);丢1,产生误差

[z1]反=1.1010111;正确

[z2]反=1.1110100(0);丢0,产生误差

[z3]反=1.1001100;正确

算术右移两位:

[x1]原=0.0000110(10);产生误差

[x2]原=1.0011010;正确

[x3]原=1.0000110(01);产生误差

[y1]补=0.0010101;正确

[y2]补=1.1111010;正确

[y3]补=1.1100110(01);产生误差

[z1]反=1.1101011;正确

[z2]反=1.1111010(00);产生误差

[z3]反=1.1100110(01);产生误差

19.设机器数字长为8位(含1位符号位),用补码运算规则计

算下列各题。

(1)A=9/64,B=-13/32,求A+B。

(2)A=19/32,B=-17/128,求A-B。

(3)A=-3/16,B=9/32,求A+B。

(4)A=-87,B=53,求A-B。

(5)A=115,B=-24,求A+B。

解:(1)A=9/64=0.0010010B,B=-13/32=-0.0110100B

[A]补=0.0010010,[B]补=1.1001100

[A+B]补=0.0010010+1.1001100=1.1011110——

无溢出

A+B=-0.0100010B=-17/64

(2)A=19/32=0.1001100B,B=-17/128=-0.0010001B

[A]补=0.1001100,[B]补=1.1101111,[-B]补

=0.0010001

[A-B]补=0.1001100+0.0010001=0.1011101——无

溢出

A-B=0.1011101B=93/128B

(3)A=-3/16=-0.0011000B,B=9/32=0.0100100B

[A]补=1.1101000,[B]补=0.0100100

[A+B]补=1.1101000+0.0100100=0.0001100——无

溢出

A+B=0.0001100B=3/32

(4)A=-87=-1010111B,B=53=110101B

[A]补=10101001,[B]补=00110101,[-B]补=1

1001011

[A-B]补=10101001+11001011=01110100——溢

(5)A=115=1110011B,B=-24=-11000B

[A]补=01110011,[B]补=1,1101000

[A+B]补=01110011+11101000=01011011——无

溢出

A+B=1011011B=91

26.按机器补码浮点运算步骤,计算[x±y]补.

(1)x=2-011×0.101100,y=2-010×(-0.011100);

(2)x=2-011×(-0.100010),y=2-010×(-0.011111);

(3)x=2101×(-0.100101),y=2100×(-0.001111)。

解:先将x、y转换成机器数形式:

(1)x=2-011×0.101100,y=2-010×(-0.011100)

[x]补=1,101;0.101100,[y]补=1,110;1.100100

[Ex]补=1,101,[y]补=1,110,[Mx]补=0.101100,[My]

补=1.100100

1)对阶:

[E]补=[Ex]补+[-Ey]补=11,101+00,010=11,111

<0,

应Ex向Ey对齐,则:[Ex]补+1=11,101+00,001=11,

110=[Ey]补

[x]补=1,110;0.010110

2)尾数运算:

[Mx]补+[My]补=0.010110+11.100100=11.111010

[Mx]补+[-My]补=0.010110+00.011100=00.110010

3)结果规格化:

[x+y]补=11,110;11.111010=11,011;11.010000

(尾数左规3次,阶码减3)

[x-y]补=11,110;00.110010,已是规格化数。

4)舍入:无

5)溢出:无

则:x+y=2-101×(-0.110000)

x-y=2-010×0.110010

(2)x=2-011×(-0.100010),y=2-010×(-0.011111)

[x]补=1,101;1.011110,[y]补=1,110;1.100001

1)对阶:过程同(1)的1),则

[x]补=1,110;1.101111

2)尾数运算:

[Mx]补+[My]补=11.101111+11.100001=

11.010000

[Mx]补+[-My]补=11.101111+00.011111=

00.001110

3)结果规格化:

[x+y]补=11,110;11.010000,已是规格化数

[x-y]补=11,110;00.001110=11,100;00.111000

(尾数左规2次,阶码减2)

4)舍入:无

5)溢出:无

则:x+y=2-010×(-0.110000)

x-y=2-100×0.111000

(3)x=2101×(-0.100101),y=2100×(-0.001111)

[x]补=0,101;1.011011,[y]补=0,100;1.110001

1)对阶:

[E]补=00,101+11,100=00,001>0,应Ey向Ex对

齐,则:

[Ey]补+1=00,100+00,001=00,101=[Ex]补

[y]补=0,101;1.111000(1)

2)尾数运算:

[Mx]补+[My]补=11.011011+11.111000(1)=

11.010011(1)

[Mx]补+[-My]补=11.011011+00.000111(1)=

11.100010(1)

2)结果规格化:

[x+y]补=00,101;11.010011(1),已是规格化数

[x-y]补=00,101;11.100010(1)=00,100;11.000

101(尾数左规1次,阶码减1)

4)舍入:

[x+y]补=00,101;11.010011(舍)

[x-y]补不变

5)溢出:无

则:x+y=2101×(-0.101101)

x-y=2100×(-0.111011)

32.设机器字长为16位,分别按4、4、4、4和5、5、3、3分

组后,

(1)画出按两种分组方案的单重分组并行进位链框图,并

比较哪种方案运算速度快。

(2)画出按两种分组方案的双重分组并行进位链框图,并

对这两种方案进行比较。

(3)用74181和74182画出单重和双重分组的并行进位链

框图。

解:(1)4—4—4—4分组的16位单重分组并行进位链框图见教

材286页图6.22。

5—5—3—3分组的16位单重分组并行进位链框图如

下:

(2)4—4—4—4分组的16位双重分组并行进位链框图见教

材289页图6.26。

5—5—3—3分组的16位双重分组并行进位链框图如

下:

5—5—3—3分组的进位时间=2.5ty3=7.5ty;

4—4—4—4分组的进位时间=2.5ty3=7.5ty;

可见,两种分组方案最长加法时间相同。

结论:双重分组并行进位的最长进位时间只与组数和级数

有关,与组内位数无关。

(3)单重分组16位并行加法器逻辑图如下(正逻辑):

注意:1)74181芯片正、负逻辑的引脚表示方法;

2)为强调可比性,5-5-3-3分组时不考虑扇入影

响;

3)181芯片只有最高、最低两个进位输入/输出端,

组内进位无引脚;

4)181为4位片,无法5-5-3-3分组,只能4-4-4-4

分组;

5)单重分组跳跃进位只用到181,使用182的一

定是双重以上分组跳跃进位;

6)单重分组跳跃进位是并行进位和串行进位技术

的结合;双重分组跳跃进位是二级并行进位技术;特别注意在位

数较少时,双重分组跳跃进位可以采用全先行进位技术实现;位

数较多时,可采用双重分组跳跃进位和串行进位技术结合实现。

第七章

1.什么叫机器指令?什么叫指令系统?为什么说指令系统与机

器的主要功能以及与硬件结构之间存在着密切的关系?

答:参考P300。

2.什么叫寻址方式?为什么要学习寻址方式?

答:参看P310。

3.什么是指令字长、机器字长和存储字长?

答:略。

4.零地址指令的操作数来自哪里??各举一例说明。

答:零地址指令的操作数来自ACC,为隐含约定。

在一地址指令中,另一个操作数的地址通常可采用ACC隐含

寻址方式获得。

5.对于二地址指令而言,操作数的物理地址可安排在什么地

方?举例说明。

答:对于二地址指令而言,操作数的物理地址可安排在寄存器内、

指令中或内存单元内等。

8.某机指令字长16位,每个操作数的地址码为6位,设操作码

长度固定,指令分为零地址、一地址和二地址三种格式。若零地

址指令有M条,一地址指令有N种,则二地址指令最多有几种?

若操作码位数可变,则二地址指令最多允许有几种?

解:1)若采用定长操作码时,二地址指令格式如下:

OP(4位)A1(6

位)

A2(6位)

设二地址指令有K种,则:K=24-M-N

当M=1(最小值),N=1(最小值)时,二地址指令最多有:

Kmax=16-1-1=14种

3)若采用变长操作码时,二地址指令格式仍如1)所示,

但操作码长度可随地址码的个数而变。此时,K=24-

(N/26+M/212);

当(N/26+M/212)1时(N/26+M/212向上取整),K

最大,则二地址指令最多有:Kmax=16-1=15种(只留一种编码

作扩展标志用。)

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

答:略。

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

略。

11.画出先变址再间址及先间址再变址的寻址过程示意图。

解:1)先变址再间址寻址过程简单示意如下:

EA=[(IX)+A],IX(IX)+1

2)先间址再变址寻址过程简单示意如下:EA=(IX)+(A),IX

(IX)+1

16.某机主存容量为4M16位,且存储字长等于指令字长,若

该机指令系统可完成108种操作,操作码位数固定,且具有直接、

间接、变址、基址、相对、立即等六种寻址方式,试回答:(1)

画出一地址指令格式并指出各字段的作用;

(2)该指令直接寻址的最大范围;

(3)一次间址和多次间址的寻址范围;

(4)立即数的范围(十进制表示);

(5)相对寻址的位移量(十进制表示);

(6)上述六种寻址方式的指令哪一种执行时间最短?哪一种

最长?为什么?哪一种便于程序浮动?哪一种最适合处理数组

问题?

(7)如何修改指令格式,使指令的寻址范围可扩大到4M?

(8)为使一条转移指令能转移到主存的任一位置,可采取什

么措施?简要说明之。

解:(1)单字长一地址指令格式:

OP(7位)M(3

位)

A(6位)

OP为操作码字段,共7位,可反映108种操作;

M为寻址方式字段,共3位,可反映6种寻址操作;

A为地址码字段,共16-7-3=6位。

(2)直接寻址的最大范围为26=64。

(3)由于存储字长为16位,故一次间址的寻址范围为216;

若多次间址,需用存储字的最高位来区别是否继续间接寻址,故

寻址范围为215。

(4)立即数的范围为-32——31(有符号数),或0——63(无

符号数)。

(5)相对寻址的位移量为-32——31。

(6)上述六种寻址方式中,因立即数由指令直接给出,故立

即寻址的指令执行时间最短。间接寻址在指令的执行阶段要多次

访存(一次间接寻址要两次访存,多次间接寻址要多次访存),故

执行时间最长。变址寻址由于变址寄存器的内容由用户给定,而

且在程序的执行过程中允许用户修改,而其形式地址始终不变,

故变址寻址的指令便于用户编制处理数组问题的程序。相对寻址

操作数的有效地址只与当前指令地址相差一定的位移量,与直接

寻址相比,更有利于程序浮动。

(7)方案一:为使指令寻址范围可扩大到4M,需要有效地

址22位,此时可将单字长一地址指令的格式改为双字长,如下

图示:

OP(7位)MOD(3位)A(高6位)

A(低16位)

方案二:如果仍采用单字长指令(16位)格式,为使

指令寻址范围扩大到4M,可通过段寻址方案实现。安排如下:

硬件设段寄存器DS(16位),用来存放段地址。在完成

指令寻址方式所规定的寻址操作后,得有效地址EA(6位),再

由硬件自动完成段寻址,最后得22位物理地址。即:物理地址

=(DS)26+EA

注:段寻址方式由硬件隐含实现。在编程指定的寻址过程

完成、EA产生之后由硬件自动完成,对用户是透明的。

方案三:在采用单字长指令(16位)格式时,还可通过

页面寻址方案使指令寻址范围扩大到4M。安排如下:

硬件设页面寄存器PR(16位),用来存放页面地址。指

令寻址方式中增设页面寻址。当需要使指令寻址范围扩大到4M

时,编程选择页面寻址方式,则:EA=(PR)‖A(有效地址=

页面地址“拼接”6位形式地址),这样得到22位有效地址。

(8)为使一条转移指令能转移到主存的任一位置,寻址范围

须达到4M,除了采用(7)方案一中的双字长一地址指令的格式

外,还可配置22位的基址寄存器或22位的变址寄存器,使EA=

(BR)+A(BR为22位的基址寄存器)或EA=(IX)+A(IX为

22位的变址寄存器),便可访问4M存储空间。还可以通过16位

的基址寄存器左移6位再和形式地址A相加,也可达到同样的效

果。

总之,不论采取何种方式,最终得到的实际地址应是22

位。

19.某CPU内有32个32位的通用寄存器,设计一种能容纳64

种操作的指令系统。假设指令字长等于机器字长,试回答以下问

题:

(1)如果主存可直接或间接寻址,采用寄存器—存储器型

指令,能直接寻址的最大存储空间是多少?画出指令格式并说明

各字段的含义。

(2)在满足(1)的前提下,如果采用通用寄存器作基址寄

存器,则上述寄存器—存储器型指令的指令格式有何特点?画出

指令格式并指出这类指令可访问多大的存储空间?

解:(1)如采用RS型指令,则此指令一定是二地址以上的地址

格式,指令格式如下:

OP(6位)R(5位)I(1位)A(20位)

操作码字段OP占6位,因为26>=64;

寄存器编号R占5位,因为25>=32;

间址位I占1位,当I=0,存储器寻址的操作数为直接寻

址,当I=1时为间接寻址;

形式地址A占20位,可以直接寻址220字。

(2)如采用基址寻址,则指令格式中应给出基址寄存器号,

以指定哪一个通用寄存器用作基址寄存器。指令格式变为:

OP(6位)源R(5

位)

I(1位)X(1位)目标R(5

位)

A(14位)

增加寻址特征位X,当X=1时,以目标寄存器R作为基址

寄存器进行基址寻址。

基址寻址可访问存储空间为:232字。

第八章

有哪些功能?画出其结构框图并简要说明各个部件的作

用。

答:参考P328和图8.2。

2.什么是指令周期?指令周期是否有一个固定值?为什么?

解:指令周期是指取出并执行完一条指令所需的时间。

由于计算机中各种指令执行所需的时间差异很大,因此为

了提高CPU运行效率,即使在同步控制的机器中,不同指令的指

令周期长度都是不一致的,也就是说指令周期对于不同的指令来

说不是一个固定值。

3.画出指令周期的流程图,分析说明图中每个子周期的作用。

答:参看P343及图8.8。

4.设CPU内有下列部件:PC、IR、SP、AC、MAR、MDR和CU。

(1)画出完成间接寻址的取数指令LDA@X(将主存某地址单

元X的内容取至AC中)的数据流(从取指令开始)。

(2)画出中断周期的数据流。

解:CPU中的数据流向与所采用的数据通路结构直接相关,不同

的数据通路中的数据流是不一样的。常用的数据通路结构方式有

直接连线、单总线、双总线、三总线等形式,目前大多采用总线

结构,直接连线方式仅适用于结构特别简单的机器中。

为简单起见,本题采用单总线将题中所给部件连接起来,框

图如下:

PCMARACMDRCUSPIR

bus

地址线数据线控制线

(1)LDA@X指令周期数据流程图:

PC→MAR

M(MAR)→MDR

(MDR)→IR

PC+1→PC

Ad(IR)→MAR

M(MAR)→MDR

MDR→Ad(IR)

Ad(IR)→MAR

M(MAR)→MDR

MDR→AC

(2)中断周期流程图如下:

SP-1→SP

PC→MDR

MDR→M(MAR)

向量地址→PC

0→EINT

SP→MAR

注:解这道题有两个要素,首先要根据所给部件设计好数

据通路,即确定信息流动的载体。其次选择好描述数据流的方法,

无论采用什么样的表达方式,其关键都要能清楚地反映数据在通

路上流动的顺序,即强调一个“流”字。较好的表达方式是流程

图的形式。

5.中断周期前是什么阶段?中断周期后又是什么阶段?在中断

周期CPU应完成什么操作?

答:中断周期前是执行周期,中断周期后是取指周期。在中断周

期,CPU应完成保存断点、将中断向量送PC和关中断等工作。

7.什么叫系统的并行性?粗粒度并行和细粒度并行有何区别?

答:所谓并行性包含同时性和并发性。同时性是指两个或两个以

上的事件在同一时刻发生,并发性是指两个或多个事件在同一时

间段发生。即在同一时刻或同一时间段内完成两个或两个以上性

质相同或性质不同的功能,只要在时间上存在相互重叠,就存在

并行性。

并行性又分为粗粒度并行和细粒度并行两类。粗粒度并行是

指在多个处理机上分别运行多个进程,由多台处理机合作完成一

个程序,一般用算法实现。细粒度并行是指在处理机的指令级和

操作级的并行性。

8.什么是指令流水?画出指令二级流水和四级流水的示意图,

它们中哪个更能提高处理机速度,为什么?

答:指令流水是指将一条指令的执行过程分为n个操作时间大致

相等的阶段,每个阶段由一个独立的功能部件来完成,这样n个

部件就可以同时执行n条指令的不同阶段,从而大大提高CPU的

吞吐率。

指令二级流水和四级流水示意图如下:

IF,IDEX,WR

IF,IDEX,WR

IF,IDEX,WR

二级指令流水示意图四级指令流水示意图

IFIDEXWR

IFIDEXWR

EXWRIFID

四级流水更能提高处理机的速度。分析如下:

假设IF、ID、EX、WR每个阶段耗时为t,则连续执行n条

指令

采用二级流水线时,耗时为:4t+(n-1)2t=(2n+2)t

采用四级流水线时,耗时为:4t+(n-1)t=(n+3)t

在n>1时,n+3<2n+2,可见四级流水线耗时比二级流水线

耗时短,因此更能提高处理机速度。

17.在中断系统中INTR、INT、EINT三个触发器各有何作用?

解:INTR——中断请求触发器,用来登记中断源发出的随机性中

断请求信号,以便为CPU查询中断及中断排队判优线路提供稳定

的中断请求信号。

EINT——中断允许触发器,CPU中的中断总开关。当EINT=1

时,表示允许中断(开中断),当EINT=0时,表示禁止中断(关

中断)。其状态可由开、关中断等指令设置。

INT——中断标记触发器,控制器时序系统中周期状态分配电

路的一部分,表示中断周期标记。当INT=1时,进入中断周期,

执行中断隐指令的操作。

24.现有A、B、C、D四个中断源,其优先级由高向低按A、B、

C、D顺序排列。若中断服务程序的执行时间为20µs,请根据下

图所示时间轴给出的中断源请求中断的时刻,画出CPU执行程序

的轨迹。

解:A、B、C、D的响优先级即处理优先级。CPU执行程序的轨迹

图如下:

t/us

B与C请求B请求D请求

C服务

B服务

A服务

程序

D服务

A请求

B服务

C服务

D服务

A服务

B服务

B服务

25.某机有五个中断源L0、L1、L2、L3、L4,按中断响应的优

先次序由高向低排序为L0L1L2L3L4,根据下示格式,

现要求中断处理次序改为L1L4L2L0L3,根据下面的格

式,写出各中断源的屏蔽字。

解:各中断源屏蔽状态见下表:

中断源屏蔽字

01234

I010010

I111111

I210110

I300010

I410111

表中:设屏蔽位=1,表示屏蔽;屏蔽位=0,表示中断开放。

26.设某机配有A、B、C三台设备,其优先顺序按ABC降序

排列,为改变中断处理次序,它们的中断屏蔽字设置如下:

设备屏蔽字

A111

B010

C011

请按下图所示时间轴给出的设备请求中断的时刻,画出CPU

执行程序的轨迹。设A、B、C中断服务程序的执行时间均为20

s。

解:A、B、C设备的响应优先级为A最高、B次之、C最低,处

理优先级为A最高、C次之、B最低。CPU执行程序的轨迹图如

下:

0708090t/us

A请求C请求B请求

C服务

B服务

A服务

程序

(本资料素材和资料部分来自网络,仅供参考。请预览后才下载,期待您的好

评与关注!)

本文发布于:2023-01-04 08:27:14,感谢您对本站的认可!

本文链接:http://www.wtabcd.cn/fanwen/fan/90/89714.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:为学杯
下一篇:现代诗朗诵
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图