第3章 习题解答3-1 解释下列名词:存储元,存储单元,存储体,存储容量,存取周期。
答:基本存储元是用来存储一位二进制信息0或1。
存储单元需要n 个存储元才能组成一个存储单元。
存储体是存储单元的集合。
存储容量就是存储器可以容纳的二进制信息的数量,常以字节(Byte )为单位。
存储周期时间 是指存储器完成一次的存取操作所需的时间,即存储器进行两次连续、独立的操作(或读写)之间所需的时间,用TM 表示。
3-3 存储器的功能是什么?答:存储器是计算机中信息的存放地,是CPU 与外界进行数据交流的窗口,是计算机中的核心组成部分。
3-6 为什么动态RAM 需要刷新?常用的刷新方式有哪几种?答: 动态RAM 存在电容,电容放电需要刷新,常用的刷新有集中式刷新,分散式刷新,异步刷新三种3-8 八体交叉主存系统,每体并行读出两个字,每字长两字节,主存周期为T ,求存储器最大频宽。
答: 频宽为单位时间读出的二进制位数 W=Q/TQ 为读出信息的总量 Q=2×2×8B=32BW=32B/T3-9 设主存容量为4MB ,如果分别采用字为32位或16位编址,则需要地址码至少多少位?如果系统允许字节编址,则需要地址码至少多少位?答: 4MB=4×220B=222B32位编址 222B /22B=220 需要地址码为20位16位编址 222B /2B=221 需要地址码为21位允许字节编址 需要地址码为22位3-11 设有一个具有14位地址和8位字长的存储器,问:(1)该存储器能存储多少字节的信息?(2)如果存储器由4K ×4位RAM 芯片组成,需要多少片?(3)需要多少位地址作芯片选择?答:(1) 14位 214B=24KB =16KB (2) 82448416=⨯=⨯K K 片 (3) 14位->12位 高2位地址作芯片选择。
3-12 有一个4K ×16位的存储器,由1K ×4位的DRAM 芯片构成(芯片内部结构是64×64),问:(1)总共需要多少DRAM 芯片?(2)设计此存储体组成框图。
(3)采用异步刷新方式,如单元刷新间隔不超过2ms ,则刷新信号周期是多少?(4)如采用集中刷新方式,存储器刷新一遍最少用多少读/写周期?答:(1) 164441614=⨯=⨯K K 片 (2) 字向4片,位向4片组成4行×4列的矩阵,地址线A0-A9直接接1k ×4芯片的地址,A10和A11经译码器译出4根地址分别接向每一行的1k ×4芯片的片选信号,第一列1k ×4的4位数据线接总芯片的D0-D3,第二列1k ×4的4位数据线接总芯片的D4-D7,第三列1k ×4的4位数据线接总芯片的D8-D11, 第四列1k ×4的4位数据线接总芯片的D12-D15,(3) 2ms/64=31.25üS 取31üS(4) 64周期3-14 某高速缓冲存储器与主存采用组相联映像方式,Cache 存储器容量为32字块,分为8组,主存容量为4096字块,每块64字。
(1)主存地址有多少位?(2)主存地址字段如何划分?各字段各需要多少位?解:(1) Cache 32字块为25 8组23主存 4096×64=212×26==218 18位地址主存地址字段如何划分为B 1B 7B 6B 7B 3B 6B 4B 7B 5B 7B 2设Cache 容量为3个字块,且开始时Cache 为空,求用FIFO 和LRU 算法时各自的命中率。
解: LRU 不中 中 FIFO 不中 中B1 B1 1 B1 1 0B7 B1 B7 1 B1 B7 1 1` 0B6 B1 B7 B6 1 B1 B7 B6 1 2 1 0B7 B1 B7 B6 1 B1 B7 B6 1 3 0 1B3 B3 B7 B6 1 B7 B6 B3 1 0 1 2B6 B1 B7 B6 1 B7 B6 B3 1 1 2 0B4 B3 B4 B6 1 B6 B3 B4 1 2 0 1B7 B7 B4 B6 1 B3 B4 B7 1 0 1 2B5 B7 B4 B5 1 B4 B7 B5 1 1 2 0B7 B7 B4 B6 1 B4 B7 B5 1 0 3 1B2 B7 B2 B6 1 B7 B5 B2 1 1 0 2LRU 为3/11 FIFO 为3/11第4章 习题与解答4-1什么是指令?什么是指令系统?如何评价一个指令系统的性能优劣?答:指令就是要计算机执行某种操作的命令,因又称为机器指令。
一台计算机中所有机器指令的集合,称为这台计算机的指令系统。
从完备性,高效性、规整性和兼容性几个方面进行评价。
4-2 什么叫做寻址方式?寻址方式有哪几类?操作数基本寻址方式有哪几种?每种寻址方式有效地址的数学形式如何表达?答:所谓寻址方式,就是寻找该操作数或指令的有效地址的方式。
寻址方式有2类, 寻找该操作数或指令的有效地址答:操作数基本寻址方式有(1)隐含寻址,指令中隐含着操作数的地址;(2) 立即寻址指令的地址字段指出的不是操作数的地址,而是操作数本身;(3) 寄存器寻址操作数放在CPU的通用寄存器中;(4) 直接寻址 EA=(A)(5) 间接寻址 EA=((A))(6) 相对寻址方式 EA=(PC)+D(7) 变址和基址寻址方式(8) 复合寻址方式(9) 块寻址方式(10) 段寻址方式4-3 某指令系统指令长16位,每个操作数据的地址码长6位,指令分为无操作数、单操作数和双操作数三类。
若双操作数指令有K条,无操作数指令有L 条,问单操作数指令最多可能有多少条?答:由于指令的总长度为16位, 操作数地址为6位,则对于双操作数指令操作码长为 16-2×6=4位,对于单操作数指令操作码长为 16-6=10位,对于无操作数指令操作码长为 16位,由于操作码可变,这样二地址指令操作码每减少一条,就可多构成26种一地址指令操作码,一地址指令操作码每减少一条,就可多构成26种零地址指令操作码,因二地址指令操作码有k条,则一地址指令最多有(24-k)×26条。
设一地址指令有X条, 则零地址指令最多有((24-k)×26-X)×26条,己知无操作数指令有L条,则有 X=(24-k)×26-L/26,如果L/26 不是整数,则取> L/26的最小整数。
4-4 在操作数的寻址方式中,①________寻址方式是指相对于当前PC所指向的存储单元偏移一个给定量的寻址方式。
②_________寻址方式是指指令直接给出操作数。
③_________寻址方式是指指令直接给出操作数的地址。
④_________寻址方式是指操作数放在通用寄存器中。
⑤_________寻址方式是指操作数的地址放在通用寄存器中。
操作数的地址为某一寄存器的内容与指令中位移之和,则可以是⑥_________寻址方式、⑦_________寻址方式、⑧_________寻址方式。
答:(1)相对(2)立即(3)直接(4)寄存器直接(5)寄存器间接(6)变址(7)基址(8)基址加变址4-5 某机16位字长指令格式如下:其中:D为形式地址,补码表示(包括号一位符号位)。
M 为寻址方式 M=0 立即寻址;M=1 直接寻址(此时D视为无符号数);M=2 间接寻址;);M=3 变址寻址(变地址寄存器为RXM=4 相对寻址试问:(1)该指令格式能定义多少种不同的操作?立即寻址操作数的范围是多少?(2)写出各种寻址方式计算有效地址的表达式。
(3)当M=1、2、4时,能访问的最大主存区为多少机器字(主存容量为64K 字)?答:(1)该指令格式能定义25 =32种不同的操作; 立即寻址操作数的范围是(-128,128)(2) M=0 Data=DM=1 EA=A Data=(D)M=2 EA=(A) Data=((D))M=3 EA=(R)+DXM=4 EA=(PC)+D(3) M=1 范围 28=256M=2 范围 216=64K字M=4范围 216=64K字4-6 基址寻址与变址寻址有什么不区别?答:变址寻址和基址寻址的地址计算方法相同,但二者又有细微的区别。
习惯上基址寻址中基址寄存器提供基准值而指令提供位移量,而变址寻址中变址寄存器提供位移量而指令提供基准值。
4-7 某计算机字长16位,主存容量64K字,采用单字长单地址指令,共有40条指令.试采用直接、立即、变址、相对四种寻址方式设计指令格式。
答:(1) 40条指令,操作码字段6位,寻址模式2位,形式地址8位寻址模式M的定义M=00,直接 EA=D (范围256个单元)M=01,立即 Data=D (范围-128—127))+D (范围64K)M=10,变址 EA=(RxM=11,相对 EA=(PC )+D (范围64K)其中 R x ,PC 都是16位的寄存器。
4-8 指令格式如下,该指令为复合型寻址方式——变址间址寻址方式,试分析指令的寻址过程或写出有效地址的计算式?解: 有效地址EA=((变地址寄存器)+偏移量)寻址过程4-9 指令格式结构如下所示,其中6-11位指定源地址,0-5位指定目标地址,试分析指令格式及寻址方式特点?解:(1)OPCODE 指定16种操作。
(2)单字长二地址指令。
(3)每个操作数可以指定8种寻址方式。
(4)操作数可以是RR 型、RS 型、SS 型4-10 一种二地址RS 型指令的结构如下所示:8位 2位 4位 2位 16位其中I 为间接寻址标志,X 为寻址模式字段,D 为位移量字段,通过I ,X ,D 的解:(1)直接寻址(2)相对寻址(3)变址寻址(4)寄存器接寻址(5)间接寻址(6)先相对后间接寻址(7)先变址后间接寻址(8)先基址后间接寻址。