首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事
您的当前位置:首页正文

计算机组成原理复习题目

2022-12-11 来源:好兔宠物网
计算机组成原理复习题目

1.什么是存储容量?什么是单元地址?什么是数据字?什么是指令字? 存储容量

存储器所能保存二进制数据的总数;常用单位为KB、MB等。 单元地址

用于识别存储器中每个存储单元的编号,即单元地址。 数据字

表示计算机所要处理数据的计算机字,称为数据字。 指令字

表示一条指令的计算机字,称为指令字。

2.用8位编码表示下列各整数的原码、反码、补码。 真值 原码 反码 补码 -35 - 010 0011 1010 0011 1101 1100 1101 1101 127 +111 1111 0111 1111 0111 1111 0111 1111 -127 -111 1111 1111 1111 1000 0000 1000 0001 -1 -000 0001 1000 0001 1111 1110 1111 1111

3.已知x和y,用变形补码计算x+y,同时指出结果是否溢出。 x=0.11011 y=-0.10101

[x]补=00.11011 ,[y]补=11.01011 [x]补 00.11011 + [y]补 11.01011 00.00110

∴[x+y]补= 00.00110 ,未溢出 x+y = +0.00110

4.已知x和y,用变形补码计算x-y,同时指出结果是否溢出。 x=0.11011 y=-0.10011

[x]补=00.11011,[-y]补= 00.10011 [x]补 00.11011 + [- y]补 00.10011 01.01110 ∴[x-y]补溢出(上溢)

5.x=2-011×0.100101,y=2-010×(-0.011110),求[x+y] 设尾数阶码均使用双符号位的补码表示

[x]浮= 11 101,00.100101 [y]浮= 11 110,11.100010 1)求阶差并对阶

△E=Ex-Ey=[Ex]补+[-Ey]补=11 101 +00 010=11 111 修改后的x表示为:

[x]浮= 11 110,0.010010(1) 00. 0 1 0 0 1 0 2 )尾数求和 +11. 1 0 0 0 1 0 MS= Mx+My =11 . 1101 00 (1) 11 . 1 1 0 1 0 0 3)规格化处理

执行2次左规处理, MS= 11 . 0 1 0 0 1 0 (0), ES= 11 100 4)舍入处理

采用0舍1入法处理,则舍去0

5)判溢出

故得最终结果为 x+y=2100×(-0.101110) 阶码符号位为11,不溢出

6.设有一个具有20位地址和32位字长的存储器,问: 该存储器能存储多少字节的信息?

存储容量 = 存储单元个数×每单元字节数 = 220×32 bit

如果存储器有512K×8位SRAM芯片组成,需要多少片? 需要做存储芯片的字位扩展;

位扩展:4片512K×8位芯片构成512K×32位的存储组; 字扩展:2组512K×32位存储组构成1M×32位的存储器; 因此,共需要2×4=8片给定的SRAM芯片 需要多少位地址做芯片选择?

字扩展的是2个存储组,因此,需1位地址做片选。

7.用16K×8的DRAM芯片构成64K×32位存储器,要求:

设储器读/写周期为0.5μs,CPU在1μs内至少要访问一次。 试问采用哪种方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少?

假定16K×8位的DRAM芯片的存储矩阵是128行×(128×8)列; 若集中刷新,则有128行×0.5us=64us的死时间,不合适; 若分散刷新,则每访存一次需要1us,也不合适; 所以,应采用异步式刷新方式。 假定DRAM芯片的刷新周期为2ms

两行的刷新间隔为:2ms/128 = 0.015625ms=15.625us 若取15.5us作为实际的刷新间隔 刷新存储体一遍实际所用时间为: 15.5us×128=1984us = 1.984ms

8.用32K×8位的EPROM芯片组成128K×16位的只读存储器,试问: 数据寄存器多少位?

因为系统数据总线为16位,所以数据寄存器16位 地址寄存器多少位?

因为存储器容量为128K,需系统地址总线17位, 所以地址寄存器17位

共需多少个EPROM芯片?

所需芯片总数: (128K/32K)×(16/8)=8片

9.设存储器容量为64M,字长为64位,模块数m=8,分别用顺序和交叉方式进行组织。存储周期T=100ns,数据总线宽度为64位,总线传送周期τ=50ns。求:顺序存储器和交叉存储器的带宽各是多少?

顺序存储器和交叉存储器连续读出m=8个字的数据信息量为: q = 8×64 = 512位

顺序存储器所需要的时间为 t1 = m×T =8×100ns =800ns =8×10-7s

故顺序存储器的带宽为 W1= q/t1 = 512/(8×10-7) = 64×107[bit/s] 交叉存储器所需要的时间为 t2 = T+ (m-1)×τ= 100ns + (8-1)×50ns = 450ns =4.5×10-7s 故交叉存储器的带宽为 W1= q/t2 = 512/(4.5×10-7) = 113.8×107[bit/s]

10.CPU执行一段程序时,cache完成存取的次数为2420次,主存完成存取的次数为80次, 已知cache存储周期为40ns,主存存储周期为240ns,求cache/主存系统的效率和平均访问时间。 命中率

h = Nc/(Nc+Nm) = 2420/(2420+80) = 0.968 主存与Cache的速度倍率 r = tm/tc = 240ns/40ns = 6 访问效率

e = 1/(r+(1-r)h) = 1/(6+(1-6)×0.968) = 86.2% 平均访问时间

Ta = tc/e = 40ns/0.862 = 46.4ns

11.已知cache存储周期40ns,主存存储周期200ns,cache/主存系统平均访问时间为50ns, 求cache的命中率是多少? 由 ta = htc+(1-h)tm,可得 200tatm50h93.75%

tctm40200

12.一个组相联Cache由64个行组成,每组4行。主存储器包含4K个块,每块128字。请表示内存地址的格式。

组相联映射下的主存地址格式如下 主存标记 组号 块内地址 8位 4位 7位

每块128字,假定主存以字进行组织 块内的字地址需要7位

Cache由64个行组成,每组4行 Cache中共包含16组,需4位组号 主存包含4K个块 主存块号为12位

主存标记位有12-4=8位

13.某机主存容量1MB,字长1B,块大小16B,Cache容量64KB,若Cache采用直接映射方式,请给出2个不同标记的内存地址,它们映射到同一个Cache行。 直接映射下的主存地址格式如下: 主存标记 Cache行号 块内地址 4位 12位 4位 每块16B 块内的字节地址需要4位

Cache容量64KB 共包含4K行 Cache块号12位 主存容量1MB 主存地址20位

主存标记位20-12-4 = 4位 两个满足题目要求的主存地址: 0000 1001 0000 1110 0000 0001 1001 0000 1110 0000

14.假设主存容量16M×32位,Cache容量64K×32位,主存与Cache之间以每块4×32位大小传送数据,请确定直接映射方式的有关参数,并画出主存地址格式。 直接映射下的主存地址格式如下: 主存标记 Cache行号 块内地址 8位 14位 2位 每块4字 块内的字地址需要2位 Cache容量64KB Cache共包含16K个块 Cache块号需要14位 主存16MB 主存地址为24位 主存标记位有24-14-2 = 8位

15某机字长为32位,CPU中有16个32位通用寄存器,设计一种能容纳64种操作的指令系统,如果采用通用寄存器作为基址寄存器,则RS型指令的最大存储空间是多少? 操作码OP 操作数R 基址寄存器R1 形式地址D 6位 4位 4位 18位 指令格式 64种操作 6位; 164位; 单字长指令 32 – 6 – 4 – 4 = 18位; 操作数S的地址E =(R1)+D,其中R1为32位的; 若系统的地址总线≤32位,则可寻址整个主存;

若系统的地址总线>32位,则可寻址的最大存储空间为232+218

16.假设某机器有80条指令,平均每条指令有4条微指令组成,其中有一条取值微指令是所有指令公用的,已知微指令长度为32位,请估算控制存储器容量。 微指令的数目为80×3+1=241条; 微指令字长为32/8=4字节;

故,控制存储器的容量为 241×4=964字节 该容量为控制存储器的最小容量。

17.今有4级流水线,分别完成取指、指令译码并取数、运算、送结果四步操作。假设完成各步操作的时间依次为100ns、100ns、80ns、50ns。请问: 流水线的操作周期应设计为多少?

流水线的操作周期应按各步操作的最大时间来考虑,即流水线时钟周期性 ,故取100ns。 若相邻两条指令发生数据相关,硬件上不采取措施,那么第2条指令要推迟多少时间进行? 遇到数据相关时,就推迟第2条指令的执行;

要推迟到所需读取的数据已产生为止,因此至少需要延迟2个时钟周期。 如果再硬件设计上加以改进,至少需推迟多少时间? 如采用专用通路技术,应保证取数之前结果已计算出来; 因此,至少需要延迟1个时钟周期。

取指 译码并取数 运算 送结果 取指 译码并取数 运算 送结果 取指 译码并取数 运算 送结果 取指 译码并取数 运算 送结果 18.指令流水线有取指(IF)、译码(ID)、执行(EX)、访存(MEM)、写回寄存器堆(WB)五个过程段,共有20条指令连续输入此流水线。 画出流水处理的时空图,假设时钟周期为100ns。

1 2 3 4 5 15 16 空间S

WB1 2 3 4 5 ME1 2 3 4 5 M 1 2 3 4 5 …EX 1 2 3 4 5 ID时间T IF1 2 3 4 5 0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t19 t20

求流水线的实际吞吐量(单位时间内执行完毕的指令条数)。

n206

H8.33*10条/秒 (Kn1)τ(5201)*100*109

求流水线的加速比。 TsnτK20*5S 4.17Tp(Kn1)τ2051

19.(1)如果认为CPU等待设备的状态信号是处于非工作状态(即踏步等待),那么在下面几种主机与设备之间的数据传送中,( A )主机与设备是串行工作的;( C )主机与设备是并行工作的;( B )主机程序与设备是并行运行的。 A、程序查询方式 B、程序中断方式 C、DMA方式 (2)、中断向量的地址是( B )。

A、子程序入口地址 B、中断服务程序入口地址 C、中断服务程序入口地址指示器 D、例行程序入口地址

(3)、采用DMA方式传送数据时,每传送一个数据就要占用一个( C )的时间。 A、指令周期 B、机器周期 C、存储周期 D、总线周期

20.设某机器有5级中断:L0,L1,L2,L3,L4,其中断响应优先次序为:L0最高,L1次之,L4最低,现在要求将中断处理次序改为L1L3L0L4L2,试问: (1)将表中各级中断处理程序的各中断屏蔽值如何设置? 每级对应一位,该位为0表示允许中断,为1表示中断屏蔽

(2) 若这5级中断同时发出中断请求,按更改后的次序画出进入各级中断处理程序的过程示意图。( L1L3L0L4L2)

按优先次序先调用L0,L0屏蔽了本级和低级中断请求,而L1的中断请求未屏蔽,则L1发生中断嵌套响应;

L1中断时,不允许任何中断,服务完毕后,退回到L0的中断服务程序,这时,允许L3的中断嵌套响应;

L3服务完毕后,返回L0中断服务程序;

L0服务完毕后,按照顺序应处理L2,L2开放了更高级中断L4,因此响应了L4,L4响应完成后再继续执行L2级中断服务程序。

21.下列陈述中正确的是( D )

A、在DMA周期内,CPU不能执行程序

B、中断发生时,CPU首先执行入栈指令将程序计数器内容保护起来 C、DMA传送方式中,DMA控制器每传送一个数据就窃取一个指令周期 D、输入输出操作的最终目的是要实现CPU与外设之间的数据传输

22.IEEE1394是( B )I/O标准接口,与SCSI( A ) I/O标准接口相比,它具有更高的( C ),更强的( D ),体积( E ),连接方便。 A、并行 B、串行 C、数据传输速率 D、数据传输实时性 E、小

23.比较通道、DMA、中断三种基本I/O方式的异同点 通道方式

利用通道来管理外设的工作,可以实现对外设的统一管理和外设与内存之间的数据传送。 减轻了CPU的负担,大大提高了CPU的工作效率。 DMA方式

需要硬件DMAC的控制管理主存与高速外设之间大批数据交换; 数据传送速度很高,传送速率仅受到内存访问时间的限制。 中断方式

一般适用于随机出现的慢速外设的数据传送服务;

一旦提出请求应立即进行,节省了CPU的时间开销,但硬件结构稍复杂一些。 24.

设某机字长16位,直接寻址空间为128字,变址时的位移量为-64~+63,16个通用寄存器

都可以作为变址寄存器,请设计一套指令系统,满足下列寻址类型的要求: (1)直接寻址的二地址指令3条; (2)变址寻址的一地址指令6条; (3)寄存器寻址的二地址指令8条; (4)直接寻址的一地址指令12条; (5)零地址指令32条。 直接寻址的二地址指令3条:

操作码OP 直接地址1 直接地址2 2位 7位 7位

这3条指令的操作码为00、01、10; 变址寻址的一地址指令6条: 操作码OP 变址寄存器 偏移量 5位 4位 7位

这6条指令的操作码为:11 000 ~ 11 101 寄存器寻址的二地址指令8条: 操作码OP 寄存器1 寄存器2 8位 4位 4位

这8条指令的操作码为11 110 000 ~ 11 110 111; 直接寻址的一地址指令12条: 操作码OP 直接地址1 9位 7位

这12条指令的操作码为:11 111 0000 ~ 11 111 1011 零地址指令32条: 操作码OP 16位

这32条指令的操作码为: 11 111 1100 0000000 ~ 11 111 1100 0011111

25.某指令系统指令字长为20位,具有双操作数、单操作数和无操作数3中指令格式,每个操作数地址规定用6位表示,当双操作数指令条数取最大值,而且单操作数指令条数也取最

大值时,这3种指令最多可能拥有的指令数各是多少?

解:按操作码扩展技术来设计,双操作数指令最多28-1条,单操作数指令最多63条,因此

无操作数指令条数的最大值为64条。

00000000 XXXXXX XXXXXX 双操作数255条

11111110 XXXXXX XXXXXX 零 11111111 000000 XXXXXX

11111111 111110 XXXXXX 单操作数63条 11111111 111111 000000

11111111 111111 111111 零操作数64条

26.某机器字长16位,主存按字节编址,转移指令采用相对寻址,由两个字节组成,第一字节为操作码字段,第二字节为相对位移量字段。

假定取指令时,每取一个字节PC自动加1。若某转移指令所在主存地址为2000H,相对位移量字段的内容为06H,则该转移指令成功转以后的目标地址是( C ) A.2006H B.2007H C.2008H D.2009H 27.下列关于RISC的叙述中,错误的是( A )

A.RISC普遍采用微程序控制器

B.RISC大多数指令在一个时钟周期内完成 C.RISC的内部通用寄存器数量相对CISC多

D.RISC的指令数、寻址方式和指令格式种类相对CISC少

28.某计算机字长为16位,主存地址空间大小为128KB,按字编址,采用单字长指令格式,指令名字段定义如下: 15 12 11 9 8 6 5 3 2 0

操作码OPMs/Md000B001B010B011B 寻址方式寄存器直接寄存器间接Ms 助记符Rn(Rn)Rs 含义Md Rd 操作数=(Rn) 操作数=((Rn))操作数=((Rn)),(Rn)+1→Rn转移目标地址=(PC)+(Rn)寄存器间接、自增相对(Rn)+D(Rn) 转移指令采用相对寻址方式,相对偏移是用补码表示,寻址方式定义如上:

(1)(X)表示存储地址X或寄存器X中的内容,请回答下列问题:

该指令系统最多可有多少条指令?该计算机最多有多少个通用寄存器?存储器地址寄存器(MAR)和存储器数据寄存器(MDR)至少各需多少位? OP字段为4位,因此该指令系统最多有24 = 16条指令; Rs/Rd字段为3位,因此最多有23 = 8 个通用寄存器; 主存空间为128KB,按字编址,128KB/2B = 64K = 216; MAR应与存储单元地址位数相同,至少为16位; MDR应与存储字长相同,至少为16位。

(2)转移指令的目标地址范围是多少? 转移指令采用相对寻址方式; 转移目标地址=(PC)+(Rn);

Rn是16位的,因此目标地址范围是64K,即整个存储空间。

(3) 若操作码0010B表示加法操作(助记符为add),寄存器R4和R5的编号分别为100B和101B,R4的内容为1234 H,R5的内容为5678H,地址1234H中的内容为5678H, 5678H中的内容为1234H,则汇编语言为add(R4),(R5)+(逗号前源操作数,都号后为目的操作数)对应的机器码是什么(用十六进制表示)?该指令执行后,哪些寄存器和存储单元的内容会改变?改变后的内容是什么?

对应的机器码:0010 001 100 010 101B (2315H)

该指令执行后R5的内容变为5679H,地址5678H的内容变为68AC。 29.下列选项中,能引起外部中断的事件是( A )

A. 键盘输入B. 除数为0 C. 浮点运算下溢 D. 访存缺页

30.(8分)某计算机主频为500MHz,CPI为5(即执行每条指令平均需要5个时钟周期)。假设某外设的数据传速率为0.5MB/S,采用中断方式与主机进行数据传送,以32位为传输单

位,对应的中断服务程序包含18条指令,中断服务的其他开销相当于2条指令的执行时间。 (1)在中断方式下,CPU用于该外设I/O的时间占整个CPU时间的百分比是多少?

(2)当该外设的数据传输率达到5MB/S时,改用DMA方式传送数据。假定每次DMA传送块大小为5000B,且DMA预处理和后处理的总开销为500个时钟周期,则CPU用于该外设I/O的时间占整个CPU时间的百分比是多少? (1)CPU每次中断所需的时钟周期数为: (18+2)* 5 =100

外设数据传输率0.5MB/s,每次中断传送32位数据; 外设每秒申请中断的次数为: 0.5MB/4B=125000 1秒钟内用于中断的时钟周期数为: 100*125000=12.5M

CPU用于外设I/O的时间占整个CPU时间的百分比: 12.5M / 500M=2.5%

(2)1秒钟内需产生的DMA次数为: 5MB/5000B=1000次

1秒钟内CPU用于DMA处理的总时钟周期数为: 1000*500=0.5M个时钟周期

CPU用于外设的时间占整个CPU时间的百分比为: 0.5M/500M=0.1%

31.单级中断系统中,中断服务程序执行顺序是( A ) I、保护现场 II、开中断 III、关中断 IV、保存断点 V、中断事件处理 VI、恢复现场 VII、中断返回 A、I->V->VI->II->VII B、III->I->V->VII C、III->IV->V->VI->VII D、IV->I->V->VI->VII

32.指令流水线有取指(IF)、译码(ID)、执行(EX)、访存(MEM)、写回寄存器堆(WB)五个过程段,共有7条指令连续输入此流水线,时钟周期为100ns。 求流水线的实际吞吐率(单位时间里执行完毕的指令数); 流水线执行完7条指令的时间是 5+(7-1)=11个时钟周期 故实际吞吐率为 7 / (11×100ns) ≈64×105条指令/s 求流水处理器的加速比。 K级流水线处理器的加速比为 Ck=非流水时间T1 / K级流水时间Tk = n×k / (k+(n-1)) 本题中,已知数据n=7,k=5,则 Ck=7×5 / (5+6) = 35 / 11 ≈3.18

33.下列存储器中,汇编语言程序员可见的是( B ) A. 存储器地址寄存器(MAR) B. 程序计数器(PC) C. 存储器数据寄存器(MDR) D. 指令寄存器(IR)

34.下列不会引起指令流水阻塞的是(A )

A. 数据旁路 B. 数据相关 C. 条件转移 D. 资源冲突

35.某计算机的指令流水线由四个功能段组成,指令流经各功能段的时间(忽略各功能段之间的缓存时间)分别是90ns、80ns、70ns和60ns,则该计算机的CPU时钟周期至少是(A) A.90ns B.80ns C.70ns D.60ns 36.相对于微程序控制器,硬布线控制器的特点是(D) A.指令执行速度慢,指令功能的修改和扩展容易 B.指令执行速度慢,指令功能的修改和扩展难 C.指令执行速度快,指令功能的修改和扩展容易 D.指令执行速度快,指令功能的修改和扩展难

因篇幅问题不能全部显示,请点此查看更多更全内容