文档库

最新最全的文档下载
当前位置:文档库 > 计算机组成原理练习题汇总

计算机组成原理练习题汇总

第2章习题运算方法和运算部件

1.37H代码若看作ASCII码、整数补码、8421码时分别代表什么?

2.比较下列有符号数补码的大小

① 321FH与A521H ② 80H与32H

③ 8000H与AF3BH ④ 72H与31H

3.写出下列数据规格化浮点数的编码。其中,阶码为5位移码(含1位阶符),尾数为11位补码(含1位数符)

① +111000 ②-10101 ③ + 0.01011

4.设待校验的数据为10101011

①采用偶校验,求校验码。

②采用CRC码,生成多项式为G(X)=X4+X+1,求CRC码。

5.有一个(7,3)码,生成多项式为G(X)=X4+X3+X2 +1,写出代码001的校验码和循环余数。

6.设待检验数据为10101011,采用码距为3的海明码,求海明码。

7.已知接收到的海明码为1010110,按偶校验原则(码距为3),问欲传的信息码是多少?

8.某CRC码的生成多项式G(x)=x3+x2+1,用此生成多项式产生的冗余位,加在信息位后形成CRC 码。若发送信息位1111 和1100 则它的CRC 码分别为_A_和_B_。由于某种原因,使接收端收到了按某种规律可判断为出错的CRC 码,例如码字_C_、_D_、和_E_

A: ①1111100 ②1111101 ③1111110 ④1111111

B: ①1100100 ②1100101 ③1100110 ④1100111

C ~E :①0000000 ②1111101 ③0010111 ④0011010

⑤1000110 ⑥1001111 ⑦1010001 ⑧1011000

解:

A:G(x)=1101,C(x)=1111

C(x)*23÷G(x)=1111000÷1101=1011余111

得到的CRC码为1111111

B:G(x)=1101,C(x)=1100

C(x)*23÷G(x)=1100000÷1101=1001余101

得到的CRC码为1100101

C~E:

分别用G(x)=1101对①~⑧作模2除:

① 0000000÷1101 余000 ② 1111101÷1101 余001

③ 0010111÷1101 余000 ④ 0011010÷1101 余000

⑤ 1000110÷1101 余000 ⑥ 1001111÷1101 余100

⑦ 1010001÷1101 余000 ⑧ 1011000÷1101 余100

所以_C_、_D_和_E_的答案是②、⑥、⑧

第3章存储器作业

某系统CPU地址总线20条,数据总线8条,存储器系统由8KB的ROM(用2K*8位的2716芯片)和1KB的RAM(用1K*4位的2142芯片)组成,译码器采用74LS138。要求:

●画出CPU和存储器的连接图(采用全译码方式);

●确定地址范围(ROM处于低地址,RAM处于高地址);

●利用下列规范的逻辑电路符号表示(见附录)

●用Powerpoint或Word做出连接图并写出相应的地址范围。

第4章指令系统作业

一、填空题

1.指令的编码将指令分成、等字段。

2.指令编码中,操作码用来指定。

3.立即寻址的操作数在____________中。

4.寄存器间接寻址中,给出的是_____________所在的寄存器编号。

5.存储器间接寻址指令中给出的是___________所在的存储器地址。一次间址CPU需要访问内存_____次才能获得操作数。

6.变址寻址方式中操作数的地址是由_________与___________之和产生。

7.用于改变程序执行顺序的指令主要有___________和___________等。

8.只有操作码而没有地址码的指令称为________指令。

9.精简指令计算机系统简称____________。

二、选择题

1.先计算后再访问内存的寻址方式是____________。

A.立即寻址 B.直接寻址

C.间接寻址 D.变址寻址

2.单地址指令中为了完成两个操作数的算术运算,除地址码指定一个操作数外,另一个操作数需采用_________

A.堆栈寻址 B.立即寻址

C.隐含寻址 D.寄存器寻址

3.指令系统采用不同寻址方式的目的主要是__________

A.可直接访问内存

B.提供扩展操作码并降低译码难度

C.实现存储程序和程序控制

D.缩短指令长度,扩大寻址空间,提高编程的灵活性

4.执行中用到堆栈指令的是____________

A.移位指令 B.乘法指令

C.子程序调用 D.串处理指令

5.下列指令中,哪类指令不能用于数值处理?

A.算术运算指令 B.移位操作

C.字符串处理指令 D.输入输出指令

6.下列指令中,________是用户不能使用的。

A.堆栈指令 B.移位操作指令

C.特权指令 D.字符串处理指令

7.操作数地址存放在寄存器中的寻址方式是_________

A.寄存器寻址 B.寄存器间接寻址

C.直接寻址 D.间接寻址

8.立即寻址是指_____

A.指令中直接给出操作数地址 B.指令中直接给出操作数

C.指令中间接给出操作数 D.指令中间接给出操作数地址

9.直接寻址是指_____

A.指令中直接给出操作数地址 B.指令中直接给出操作数

C.指令中间接给出操作数 D.指令中间接给出操作数地址

10.寄存器直接寻址,在指令操作数地址字段中给出的是_____。

A.寄存器编号

B.操作数本身

C.内存地址

D.I/O端口地址

11.间接寻址是指_____。

A.指令中直接给出操作数地址

B.指令中直接给出操作数

C.指令中间接给出操作数

D.指令中给出的是操作数地址所在的存储单元地址12.变址寻址方式中,操作数的有效地址等于_____。

A.基址寄存器内容加上形式地址(位移量)B.堆栈指示器内容加上形式地址C.变址寄存器内容加上形式地址 D.程序计数器内容加上形式地址13.相对寻址方式中,求有效地址使用_____加上偏移量。

A.基址寄存器内容 B.堆栈指针内容 C.变址寄存器内容 D.程序计数器内容14.采用基址寻址可扩大寻址范围,且_________

A.基址寄存器内容由用户确定,在程序执行过程中不可变;

B.基址寄存器内容由操作系统确定,在程序执行过程中不可变;

C.基址寄存器内容由用户确定,在程序执行过程中可变;

B.基址寄存器内容由操作系统确定,在程序执行过程中可变。

15.采用变址寻址可扩大寻址范围,且_________

A.变址寄存器内容由用户确定,在程序执行过程中不可变;

B.变址寄存器内容由操作系统确定,在程序执行过程中不可变;

C.变址寄存器内容由用户确定,在程序执行过程中可变;

B.变址寄存器内容由操作系统确定,在程序执行过程中可变。

16.指令的寻址方式有顺序和跳跃两种方式。采用跳跃寻址方式可以实现_________ A.堆栈寻址 B.程序的条件转移

C.程序的无条件转移 D.程序的条件转移或无条件转移

17.下列几项中,不符合RISC指令系统的特点是_______

A.指令长度固定,指令种类少;

B.寻址方式种类尽量减少,指令功能尽可能强;

C.增加寄存器的数目,以尽量减少访存次数;

D.选取使用频率最高的一些简单指令,以及很有用但不复杂的指令。

18.设机器字长为16位,存储器按字节编址,对于单字长指令而言,读取该指令后,PC值自动加_________

A.1

B.2

C.3

D.4

三.综合分析题

1.若某计算机数据线、地址线均是8bit,有—条相对寻址的无条件转移指令存于内存的20H单元中,指令给出的位移量D=00010101B,设该指令占用2个字节,试计算:

(1)取该指令时PC的内容

(2)该指令执行结束时PC的内容

2.某计算机有变址寻址、间接寻址和相对寻址等寻址方式,设当前指令的地址码部分为001AH,正在执行的指令所在地址为1F05H,变址寄存器中的内容为23AOH,其H表示十六进制数。己知存储器的部分地址及相应内容如图, (1)当执行取数指令时,如为变址寻址方式,则取出的数为( )。

(2)如为间接寻址,取出的数为( )

(3)当执行转移指令时,转移地址( )

计算机组成原理练习题汇总

(1)有效地址:23A0H+001AH=23BAH;(23BA)=1748H。

(2)有效地址:(001AH)=23A0H;(23A0H)=2600H。

(3)寄存器为16位,所以一个指令字通常为16位,

转移地址=(PC)+2+001AH=1F21H

3.假设(R)=1000H,(1000H)=2000H,(2000H)=3000H,(PC)=4000H,问在以下寻址方式下访问到操作数的值是什么?

(1)寄存器寻址R

(2)寄存器间接寻址(R)

(3)直接寻址1000

(4)存储器间接寻址(1000)

(5)立即数寻址#2000

4.某机字长为16位,存储器按字编址,访内存指令格式如下

计算机组成原理练习题汇总

其中OP是操作码,M定义寻址方式,A为形式地址。

设PC和RX分别为程序计数和变址寄存器,字长16位

(1)该指令能定义多少种指令?

(2)表中各种寻址方式的寻址范围为多少?

(3)写出表中各种寻址方式的有效地址EA的计算公式。

计算机组成原理练习题汇总

5.假设某计算机指令字长度为32位,具有二地址、一地址、零地址3种指令格式,每个操作数地址规定用8位表示,若操作码字段固定为8位,现已设计出K 条二地址指令,L条零地址指令,那么这台计算机最多能设计出多少条单地址指令?

6.某指令系统指令字长为20位,具有双操作数、单操作数和无操作数3种指令格式,每个操作数地址规定用6位表示,当双操作数指令条数取最大值,而且单操作数指令条数也取最大值时,这3种指令最多可能拥有的指令数各是多少?

7. 某指令系统指令字长为24位,,地址码长8位,具有双操作数、单操作数和无操作数3种指令格式,采用扩展操作码技术,若单操作数指令M条,零操作数指令N条,则双操作数指令多少条?

课后题:

1、某8位微型机地址码为18位,若使用4K×4位的RAM芯片组成模块板结构的存储器,试问:

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

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

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

(4)共有多少片RAM?

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

解:

(1)218 = 256K,则该机所允许的最大主存空间是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位地址译码选片。地址格式分配如下:

2、设CPU共有16根地址线,8根数据线,并用-MREQ(低电平有效)作访存控制信号,R/-W作读写命令信号(高电平为读,低电平为写)。现有下列存储芯片:

ROM(2K×8位,4K×4位,8K×8位),RAM(1K×4位,2K×8位,4K×8位),及74138译码器和其他门电路(门电路自定)。试从上述规格中选用合适芯片,画出CPU和存储芯片的连接图。要求:

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

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

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

解:

(1)地址空间分配图:

(2)选片:ROM:4K×4位:2片;

RAM:4K×8位:3片;

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

3、CPU假设同上题,现有8片8K×8位的RAM芯片与CPU相连,试回答:

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

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

(3)如果运行时发现不论往哪片RAM写入数据后,以A000H为起始地址的存储芯片都有与其相同的数据,分析故障原因。

(4)根据(1)的连接图,若出现地址线A13与CPU断线,并搭接到高电平上,将出现什么后果?

解:

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

(2)地址空间分配图:

(3)如果运行时发现不论往哪片RAM写入数据后,以A000H为起始地址的存储芯片(第5片)都有与其相同的数据,则根本的故障原因为:该存储芯片的片选输入端很可能总是处于低电平。可能的情况有:

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

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

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

在此,假设芯片与译码器本身都是好的。

(4)如果地址线A13与CPU断线,并搭接到高电平上,将会出现A13恒为“1”的情况。此时存储器只能寻址A13=1的地址空间(奇数片),A13=0的另一半地址空间(偶数片)将永远访问不到。若对A13=0的地址空间(偶数片)进行访问,只能错误地访问到A13=1的对应空间(奇数片)中去。

第六章存储系统

一、填空题

1. 层次化存储体系涉及到主存、辅存、Cache和寄存器,按照存取速度排序依次是_____。

2. Cache介于主存和CPU之间,其速度比主存__①___容量比主存小很多;它的作用是弥补CPU与主存在__②___上的差异。

3. 将辅助存储器(磁盘)当作主存来使用,从而扩大程序可访问的存储空间,这样的存储结构称为_____.

4. 主存地址映射是用来确定__①___地址与__②___地址之间的逻辑关系。

5. 常用的地址映射方法有__①_、__②__组相联映射三种。

6. 按照主存-外存层次的信息传送单位不同,虚拟存储器有____式____式和式三类。

7. 虚拟存储器在运行是时,CPU根据程序指令生成的地址是__①___,该地址经过转换的形成__②___

8. 虚拟存储器通常是由主存和__①__两级存储体系组成的。为了在一台特定的机器上执行程序,必须把__②___映射到这台机器主存储器的__③___空间上,这个过程成为地址映射。

9. 建立高速缓冲存储器的理论依据是_____。

10. 计算机系统中,下列部件都能够存储信息:

a. 主存

b. CPU内的通用寄存器

c.Cache d.磁带e磁盘

按照CPU存取速度排列,由快到慢依次为__①___,

11. 使用高速缓冲存储器是为了解决__①__问题,存储管理主要由__②__实现。使用虚拟存储器是为了解决__③__问题,存储管理主要由__④__实现。后者在执行程序时,必须把__⑤__映射到主存储器的__⑥__空间上,这个过程称为__⑦__ 。

12. 在计算机中,主存的工作方式是__①__;辅存的工作方式是__②__

二、选择题

1. 计算机的存储器采用分级方式是为了____

A.减少主机箱的体积B.解决容量、价格、速度

C. 保存大量数据方便D.操作方便

2. 在主存和CPU之间增加cache的目的是____

A.增加内存容量B.提高内存的可靠性

C.解决CPU与内存之间的速度匹配问题

D.增加内存容量,同时加快存取速度

3. 采用虚拟存储器的主要目的是_____

A.提高主存储器的存取速度

B.扩大存储器空间,并能进行自动管理

C. 提高外存储器的存取速度

D.扩大外存储器的存储空间

4.程序访问的局限性是使用_____的依据。

A.缓冲

B. Cache

C.虚拟内存

D.进程

5.有关高速缓冲存储器Cache的说法正确的是_____.

A.只能在CPU以外

B.CPU内外都可设置Cache

C. 只能在CPU以内

D.若存在Cache,CPU就不能再访问内存

6.现行奔腾机的主板上都带有Cache存储器,这个Cache存储器是_____。

A. 硬盘与主存之间的缓存

B. 软盘与主存之间的缓存

C. CPU与视频设备之间的缓存

D. CPU与主存储器之间的缓存

三、综合题

1. CPU执行一段程序时,cache完成存取的次数为1900次,主存完成存取的次数为100次,已知cache存取周期为50ns,主存存取周期为250ns,求cache的命中率和平均访问时间。

2. 已知cache命中率H=0.98 ,主存比cache慢4倍,主存存取周期为200ns,求cache的平均访问时间。

3.一台计算机的主存容量为1MB,字长为32位,直接映像的Cache容量为512字,Cache 块长为1字,试设计Cache和主存的地址格式。

4. 有一主存-Cache层次的存储器,主存容量lMB,cache容量64KB,每块8KB,采用直接映像方式。

(1)求主存地址格式?

(2)主存地址为25301H的存储单元,问它在主存的哪个块?对应Cache的哪一块?

5.一个组相联映像cache由64个存储块构成,每组包含4个存储块。每组包含4个存储块,每块由128字组成。访存地址为字地址。

(1)写出主存地址位数和地址格式。

(2)写出Cache地址位数和地址格式。

6.页式存储系统的逻辑地址是由页号和页内地址两部分组成。假定页面的大小为4K,

地址变换过程如下图所示,图中逻辑地址用十进制表示。图中有效地址经过变换后,十进

制物理地址a 应为()。

A.33220 B.8644 C.4548 D.2500

计算机组成原理练习题汇总

课后题:

1、设机器数字长为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.001 0010)2 B= -13/32=(-0.011 0100)2

[A]补=0.001 0010 [B]补=1.100 1100

[A+B]补= 0. 0 0 1 0 0 1 0 + 1. 1 0 0 1 1 0 0 = 1. 1 0 1 1 1 1 0 ——无溢出A+B=(-0.010 0010)2 = -17/64

(2)A=19/32=(0.100 1100)2 B= -17/128=(-0.001 0001)2

[A]补=0.100 1100 [B]补=1.110 1111

[-B]补=0.001 0001

[A-B]补= 0. 1 0 0 1 1 0 0 + 0. 0 0 1 0 0 0 1 = 0. 1 0 1 1 1 0 1 ——无溢出A-B=(0.101 1101)2 = 93/128

(3)A= -3/16=(-0.001 1000)2 B=9/32=(0.010 0100)2

[A]补=1.110 1000 [B]补= 0.010 0100

[A+B]补= 1. 1 1 0 1 0 0 0 + 0. 0 1 0 0 1 0 0 = 0. 0 0 0 1 1 0 0 ——无溢出

A+B=(0.000 1100)2 = 3/32

(4)A= -87=(-101 0111)2 B=53=(110 101)2

[A]补=1,010 1001 [B]补=0,011 0101

[-B]补=1,100 1011

[A-B]补= 1,0 1 0 1 0 0 1 + 1,1 0 0 1 0 1 1 = 0,1 1 1 0 1 0 0 ——溢出

A-B=(-1,000 1100)2 = -140

(5)A=115=(111 0011)2 B= -24=(-11 000)2

[A]补=0,111 0011 [B]补=1,110 1000

[A+B]补= 0,1 1 1 0 0 1 1 + 1,1 1 0 1 0 0 0 = 0,1 0 1 1 0 1 1——无溢出A+B=(101 1011)2 = 91

2、用原码一位乘、两位乘和补码一位乘(Booth算法)、两位乘计算x·y。

(1)x= 0.110 111,y= -0.101 110;

(2)x= -0.010 111,y= -0.010 101;

(3)x= 19,y= 35;

(4)x= 0.110 11,y= -0.111 01。

第七章

1、某机字长16位,存储器直接寻址空间为128字,变址时的位移量为-64~+63,16个通用寄存器均可作为变址寄存器。采用扩展操作码技术,设计一套指令系统格式,满足下列寻址类型的要求:

(1)直接寻址的二地址指令3条;

(2)变址寻址的一地址指令6条;

(3)寄存器寻址的二地址指令8条;

(4)直接寻址的一地址指令12条;

(5)零地址指令32条。

试问还有多少种代码未用?若安排寄存器寻址的一地址指令,最多还能容纳多少条?

2、某机指令字长16位,每个操作数的地址码为6位,设操作码长度固定,指令分为零地址、一地址和二地址三种格式。若零地址指令有M种,一地址指令有N种,则二地址指令最多有几种?若操作码位数可变,则二地址指令最多允许有几种?