第一章 1 电子数字计算机和电子模拟计算机有什么区别? 解决方案:电子数字计算机处理的信息及时离散,计算过程不连续;电子模拟计算机处理的信息是连续变化的物理量,计算过程是连续的。 2 .冯· 诺依曼计算机的特点是什么? 最重要的一点是什么? 解:冯· 诺依曼计算机的特点如下: ① 计算机(指硬件)应由五个基本部件组成:运算器、存储器、控制器、输入设备和输出设备; ② 计算机内部使用二进制来表示指令和数据; ③ 提前将编制的程序和原始数据存储在存储器中,然后启动计算机工作。 第③ 点是最重要的一点。 3 计算机硬件由哪些部件组成? 它们各有哪些功能? 解决方案:计算机硬件应由五个基本部件组成:计算机、存储器、控制器、输入设备和输出设备。它们各自的功能是: ① 输入设备:将人们编写的程序和原始数据发送到计算机,并将其转换为计算机内部可识别和接受的信息模式。 ② 输出设备:以人或其他设备可接受的形式将计算机的处理结果送出计算机。 ③ 存储器:用于存储程序和数据。 ④ 操作员:处理和操作信息。 ⑤ 控制器:根据人们预先确定的操作步骤,控制整个计算机的各个部件有序自动工作。 4 什么是总线? 简要介绍了总线结构的特点。 解决方案:总线是一组可以服务于多个部件的公共信息传输线,可以分时发送和接收各部件的信息。单总线结构,即主要部件连接到单组总线,称为系统总线。CPU 与主存、CPU 与外设之间可以直接进行信息交换,主存与外设、外设与外设之间也可以直接进行信息交换,而无须经过CPU 的干预。 5 简要描述计算机的层次结构,说明各层次的主要特征。 解决方案:现代计算机系统是由硬件和软件组成的综合体,可视为按功能划分的多层次结构。 第0 实体由硬件组成。 第1 这个级别是微程序级个级别的机器语言是微指令集,程序员用微指令编写的微程序通常是硬件直接执行的。 第2 级别是传统的机器级别。这个级别的机器语言是机器的指令集,程序员用机器指令编写的程序可以由微程序解释。 第3 级别是操作系统级别。从操作系统的基本功能来看,一方面要直接管理传统机器中的软硬件资源,另一方面是传统机器的延伸。 第4 级是汇编语言级。这级的机器语言是汇编语言,完成汇编语言翻译的程序叫做汇编程序。 第5 级别是高级语言级别。机器语言是各种高级语言,通常使用编译程序来完成高级语言翻译。 第6 等级是应用语言等级。这个级别是专门设计的,以使计算机满足某种用途,所以这个级别的语言是各种面向问题的应用语言。 6 计算机系统的主要技术指标是什么? 解决方案:计算机系统的主要技术指标有:机器字长、数据通道宽度、主存储容量和操作速度等。 机器字长是指参与计算的基本位数,由加法器和寄存器的位数决定。 数据通路宽度是指数据总线一次可以并行传输信息的位数。 主存储容量是指主存储器可以存储的所有信息量。 操作速度与机器的主频、执行什么样的操作、主存本身的速度等因素有关。
第二章 1 设置机器数字长8 位(含1 位符号位) ,写下以下两进制数的原码、补码和 反码:0 ,- 0 ,0 .1000 ,- 0 .1000 ,0 .1111 ,- 0 .1111 ,1101 ,- 1101 。 3 。已知以下数字的原码表示,分别写下其补码表示: [X1 ]原= 0 .10100 ,[X2 ]原=1 .10111 。 解:[X1 ]补= 0 .10100 ,[X2 ]补= 1 .01001 。
4 。已知以下数字的补码表示,分别写出其真实值: [ X1 ]补= 0 .10100 ,[ X2 ]补=1 .10111 。 解: X1 = 0 .10100 ,X2 = - 0 .01001 。
8 .一个n 位字长的二进制定点整数,其中1 位于符号位,分别写在补码和反码上 种情况下: (1) 模数; (2) 最大正数; (3) 最负的数; (4) 符号位的权利; (5) - 1 表示形式; (6) 0 表示形式。
9 .某机字长16 在以下情况下,询问数值的范围: (1) 无符号整数; (2) 定点小数用原码表示; (3) 定点小数用补码表示; (4) 定点整数用原码表示; (5) 定点整数用补码表示。
10 .某机字长32 位,试着分别写出无符号整数和带有符号整数(补码)的表示范围(用十个 进制数表示) 。
11 一个浮点数字长12 位,其中阶符1 阶码值3 位,数符1 位,尾数值7 位,阶码以2 最后,阶码和尾数用补码表示。它能表示多少最大正数? 最小规格化正数是多少? 绝对值最大的负数是多少?
12 .某浮点数字长16 位,阶码部分6 位(含1 位阶符) ,移码表示,以2 为底;尾 数部分10 位(含1 位数符,尾数最高) ,补码表示标准化。分别写下以下两个问题 进制代码和十进制真值。 (1) 非零最小正数; (2) 最大正数; (3) 绝对值最小负数; (4) 绝对值最大负数。
13 一浮点数,其阶码部分为p 位,尾数为q 位,各包含1 位符号位均为补码表 示;尾数基数r = 2 ,上限、下限和非零的最小正数是多少? 写 数据的机器层次表示表达式。
14 若上题尾数基数r = 16 ,表达式按上述要求书写。
15 一个浮点数字长32 位,格式如下。阶码部分8 位,以2 移码表示为底;尾数共24个部分 位(含1 位数符) ,补码表示。现有的浮点代码是(8C5A3E00)16 ,试写它所表示的十进制真值。
16 .试将( - 0 .1101)2 用IEEE 表示短浮点数格式。
17 将以下十进制数转换为IEEE 短浮点数:
18 .将下列IEEE 短浮点数转换为十进制数: (1) ; (2) ; (3) ; (4) ; (5) ; (6) 。
19 .对下列ASCII 编码: , , , , , ,
20 以下形式表示(5382)10 。 (1) 8421 码; (2) 余3 码; (3) 2421 码; (4) 二进制数。
21 。奇偶校验位填写下列代码,现设为奇偶校验: 1 0 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 解:3 个代码的验证位分别为0 ,0 ,1 。
22 。已知以下数据块约定:横向验证、纵向验证为奇怪验证,请指出至少有多少错误。
23 。要求有效信息位为 海明校验码。
24 计算机准备传输的信息是:01111 ,生成多项式X5 + X2 + 1 ,计算校准位,写出来CRC 码。
第三章 1 指令长度和机器字长有什么关系? 半字长指令、单字长指令、双字长指令是什么意思? 解决方案:指令长度与机器字长无固定关系。指令长度可等于机器字长,也可大于或小于机器字长。指令长度等于机器字长的指令通常称为单字长指令;指令长度等于半机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。 2 零地址指令的操作数来自哪里? 在一个地址指令中,通常可以通过什么方式获得另一个操作数的地址? 举例说明。 解决方案:双操作数的零地址指令的操作数来自堆栈的堆栈屋顶和二次堆栈屋顶。双操作数的一个地址指令的另一个操作数通常可以通过隐藏的地址搜索获得,即将另一个操作数提前存储在累加器中。例如,上述零地址和一个地址的加法指令。 3 。指令长度为16。 位;每个操作数的地址码长6 该指令分为三类:无操作数、单操作数和双操作数。如果双操作数指令已经存在K 无操作数指令有L种,问单操作数指令最多可能有多少种? 上述三类指令允许的最大指令条数是多少?
4 设置机器为指令长度12的指令字结构 位,每个地址码占3 位着提出一种分配 该指令系统包令系统:4 条三地址指令,8 第二条地址指令,180 条款地址指令。
5 .指令格式与上述问题相同,能否构成:三个地址指令4 条单地址指令255 条,零地址指令64 条? 为什么?
6 指令中地址码的位数与直接访问的主存容量和最小搜索单位有什么关系? 6 6 解决方案:主存储容量越大,所需的地址码位数就越长。对于相同的容量,最小的搜索单位越小,地址码的位数就越长。 7 试着比较间接地址和寄存器地址。 解决方案:间接地址搜索模式的有效地址在主存储中,操作数也在主存储中;寄存器地址模式的有效地址在寄存器中,操作数在主存储中。因此,间接地址搜索相对较慢。 8 试着比较基址寻址和变址寻址。 解决方案:在形成有效地址时使用的算法相同,但两者实际上是不同的。一般来说,变址寄存器提供修改量(可变) ,基准值(固定)在指令中提供 ;基准值(固定)提供基准值(固定) ,位移(可变)在指令中提供 。这两种地址搜索方法的应用也不同。地址搜索是针对用户的,用于访问字符串、向量和数组数据;基址搜索系统主要用于逻辑地址和物理地址的转换,以解决主存储中程序的再定位和扩大搜索空间的问题。在一些大型机器中,基址寄存器只能由特权指令管理,用户指令无权操作和修改。 9 .某字长为16 位,主存容量为64K 字,采用单字长单地址指令,共有50 条指令。若有直接寻址、间接寻址、变址寻址、相对寻址四种寻址方式,试设计其指令格式。 解:操作码6 位,寻址方式2 位,地址码8 位。 10 .某机字长为16 位,主存容量为64K 字,指令格式为单字长单地址,共有64 条指令。试说明: (1) 若只采用直接寻址方式,指令能访问多少主存单元? (2) 为扩充指令的寻址范围,可采用直接/间接寻址方式,若只增加一位直接/间接标志,指令可寻址范围为多少? 指令直接寻址的范围为多少? (3) 采用页面寻址方式,若只增加一位Z/C(零页/现行页)标志,指令寻址范围为多少? 指令直接寻址范围为多少? (4) 采用(2) 、(3) 两种方式结合,指令的寻址范围为多少? 指令直接寻址范围为多少?
11 .设某机字长32 位,CPU 有32 个32 位的通用寄存器,设计一个能容纳64 种操作的单字长指令系统。 (1) 如果是存储器间接寻址方式的寄存器- 存储器型指令,能直接寻址的最大主存空间是多少? (2) 如果采用通用寄存器作为基址寄存器,能直接寻址的最大主存空间又是多少? 解:因为计算机中共有64 条指令,所以操作码占6 位;32 个通用寄存器,寄存器编号占5 位;其余部分为地址码或标志位。 (1) 如果是存储器间接寻址方式的寄存器- 存储器型指令,操作码6 位,寄存器编号5 位,间址标志1 位,地址码20 位,直接寻址的最大主存空间是字。 (2) 如果采用通用寄存器作为基址寄存器,,能直接寻址的最大主存空间是 字。
12 .已知某小型机字长为16 位,其双操作数指令的格式如下:
其中:OP 为操作码,R 为通用寄存器地址。试说明下列各种情况下能访问的最大主存区域有多少机器字? (1) A 为立即数。 (2) A 为直接主存单元地址。 (3) A 为间接地址(非多重间址) 。 (4) A 为变址寻址的形式地址,假定变址寄存器为R1 (字长为16 位) 。 解:(1) 1 个机器字。 (2) 256 个机器字。 (3) 65536 个机器字。 (4) 65536 个机器字。 13 .计算下列4 条指令的有效地址(指令长度为16 位) 。 (1) Q(2) Q(3) Q(4) Q
16 .举例说明哪几种寻址方式除去取指令以外不访问存储器? 哪几种寻址方式除去取指令外只需访问一次存储器? 完成什么样的指令,包括取指令在内共访问4 次存储器? 解:除去取指令以外不访问存储器:立即寻址,寄存器寻址。 除去取指令外只需访问一次存储器:直接寻址,寄存器间接寻址,变址寻址,基址寻址,相对寻址,页面寻址。 二级间接寻址包括取指令在内共访问4 次存储器。 17 .设相对寻址的转移指令占两个字节,第一个字节是操作码,第二个字节是相对位移量,用补码表示。假设当前转移指令第一字节所在的地址为2000H ,且CPU 每取一个字节便自动完成(PC) + 1 → PC 的操作。试问当执行JMP *+ 8 和JMP *- 9 指令( 倡为相对寻址特征)时,转移指令第二字节的内容各为多少? 转移的目的地址各是什么? 解:转移指令第二字节的内容分别为:(+8),(-9) 转移的目的地址分别为:200AH ,1FF9H 。 20.什么叫主程序和子程序? 调用子程序时还可采用哪几种方法保存返回地址? 画图说明调用子程序的过程。 解:主程序就是指通常的程序,而子程序是一组可以公用的指令序列,只要知道子程序的入口地址就能调用它。 保存返回地址的方法有多种: (1) 用子程序的第一个字单元存放返回地址。转子指令把返回地址存放在子程序的第一个字单元中,子程序从第二个字单元开始执行。返回时将第一个字单元地址作为间接地址,采用间址方式返回主程序。 (2) 用寄存器存放返回地址。转子指令先把返回地址放到某一个寄存器中,再由子程序将寄存器中的内容转移到另一个安全的地方。 (3) 用堆栈保存返回地址。 调用子程序的过程如图3唱8 所示,此时返回地址保存在堆栈中。
21 .在某些计算机中,调用子程序的方法是这样实现的:转子指令将返回地址存入子程序的第一个字单元,然后从第二个字单元开始执行子程序,请回答下列问题: (1) 为这种方法设计一条从子程序转到主程序的返回指令。 (2) 在这种情况下,怎么在主、子程序间进行参数的传递? (3) 上述方法是否可用于子程序的嵌套? (4) 上述方法是否可用于子程序的递归(即某个子程序自己调用自己) ? (5) 如果改用堆栈方法,是否可实现(4) 所提出的问题? 解:(1) 返回指令通常为零地址指令。返回地址保存在堆栈中,执行返回指令时自动从堆栈中弹出。而目前返回地址是保存在子程序的第一个单元中,故此时返回指令不能再是零地址指令了,而应当是一地址指令。如:
间接寻址可找到返回地址,然后无条件转移到返回的位置。 (2) 在这种情况下,可利用寄存器或主存单元进行主、子程序间的参数传递。 (3) 可以用于子程序的嵌套(多重转子) 。因为每个返回地址都放在调用的子程序的第一个单元中。 (4) 不可以用于子程序的递归,因为当某个子程序自己调用自己时,子程序第一个单元的内容将被破坏。 (5) 如果改用堆栈方法,可以实现子程序的递归,因堆栈具有后进先出的功能。
第四章 1 .证明在全加器里,进位传递函数。
解:并行加法器中的每一个全加器都有一个从低位送来的进位和一个传送给较高位的进位。进位表达式为 欲证明 ,也就是要证明
用卡诺图法,图4-10(a)和4-10(b)分别是两个逻辑表达式的卡诺图。两个卡诺图相同,两个逻辑表达式就相等,则进位传递函数的两种形式相等。 2 .某加法器采用组内并行、组间并行的进位链,4 位一组,写出进位信号C6 的逻辑表达式。
3 .设计一个9 位先行进位加法器,每3 位为一组,采用两级先行进位线路。
4 .已知X 和Y ,试用它们的变形补码计算出X + Y ,并指出结果是否溢出。 (1) X = 0 .11011 ,Y = 0 .11111 (2) X = 0 .11011 ,Y = - 0 .10101 (3) X = - 0 .10110 ,Y = - 0 .00001 (4) X = - 0 .11011 ,Y = 0 .11110
5 .已知X 和Y ,试用它们的变形补码计算出X - Y ,并指出结果是否溢出。 (1) X = 0 .11011 ,Y = - 0 .11111 (2) X = 0 .10111 ,Y = 0 .11011 (3) X = 0 .11011 ,Y = - 0 .10011 (4) X = - 0 .10110 ,Y = - 0 .00001 9
7 .设下列数据长8 位,包括1 位符号位,采用补码表示,分别写出每个数据右移或左移2 位之后的结果。 (1) 0 . (2) 1 . (3) 1 . (4) 1 .
8 .分别用原码乘法和补码乘法计算X × Y 。 (1) X = 0 .11011 ,Y = - 0 .11111 (2) X = - 0 .11010 ,Y = - 0 .01110
(2) X × Y = 0 . ,过程略。 9 .根据补码两位乘法规则推导出补码3 位乘法的规则。 解:先根据补码1 位乘法推出补码2 位乘法规则,再根据补码2 位乘法推出补码3 位乘法规则。
10 .分别用原码和补码加减交替法计算X ÷ Y 。 (1) X = 0 .10101 ,Y = 0 .11011 (2) X = - 0 .10101 ,Y = 0 .11011 (3) X = 0 .10001 ,Y = - 0 .10110 (4) X = - 0 .10110 ,Y = - 0 .11011
11 .设浮点数的阶码和尾数部分均用补码表示,按照浮点数的运算规则,计算下列各题:
12 .设浮点数的阶码和尾数部分均用补码表示,按照浮点数的运算规则,计算下列各题:
13 .用流程图描述浮点除法运算的算法步骤。
14 .设计一个1 位5421 码加法器。 解:设1 位被加数为A4 A3 A2 A1 ,加数为B4 B3 B2 B1 。5421码的校正关系如表4-4所示。
第五章 1 .如何区别存储器和寄存器? 两者是一回事的说法对吗? 解:存储器和寄存器不是一回事。存储器在CPU 的外边,专门用来存放程序和数据,访问存储器的速度较慢。寄存器属于CPU 的一部分,访问寄存器的速度很快。 2 .存储器的主要功能是什么? 为什么要把存储系统分成若干个不同层次? 主要有哪些层次? 解:存储器的主要功能是用来保存程序和数据。存储系统是由几个容量、速度和价格各不相同的存储器用硬件、软件、硬件与软件相结合的方法连接起来的系统。把存储系统分成若干个不同层次的目的是为了解决存储容量、存取速度和价格之间的矛盾。由高速缓冲存储器、主存储器、辅助存储器构成的三级存储系统可以分为两个层次,其中高速缓存和主存间称为Cache - 主存存储层次(Cache 存储系统) ;主存和辅存间称为主存— 辅存存储层次(虚拟存储系统) 。 3 .什么是半导体存储器? 它有什么特点? 解:采用半导体器件制造的存储器,主要有MOS 型存储器和双极型存储器两大类。半导体存储器具有容量大、速度快、体积小、可靠性高等特点。半导体随机存储器存储的信息会因为断电而丢失。 4 .SRAM 记忆单元电路的工作原理是什么? 它和DRAM 记忆单元电路相比有何异同点? 解:SRAM 记忆单元由6 个MOS 管组成,利用双稳态触发器来存储信息,可以对其进行读或写,只要电源不断电,信息将可保留。DRAM 记忆单元可以由4 个和单个MOS管组成,利用栅极电容存储信息,需要定时刷新。 5 .动态RAM 为什么要刷新? 一般有几种刷新方式? 各有什么优缺点? 解:DRAM 记忆单元是通过栅极电容上存储的电荷来暂存信息的,由于电容上的电荷会随着时间的推移被逐渐泄放掉,因此每隔一定的时间必须向栅极电容补充一次电荷,这个过程就叫做刷新。常见的刷新方式有集中式、分散式和异步式3 种。集中方式的特点是读写操作时不受刷新工作的影响,系统的存取速度比较高;但有死区,而且存储容量越大,死区就越长。分散方式的特点是没有死区;但它加长了系统的存取周期,降低了整机的速度,且刷新过于频繁,没有充分利用所允许的最大刷新间隔。异步方式虽然也有死区,但比集中方式的死区小得多,而且减少了刷新次数,是比较实用的一种刷新方式。 6 .一般存储芯片都设有片选端 ,它有什么用途? 解:片选线用来决定该芯片是否被选中。=0,芯片被选中;=1,芯片不选中。 7 .DRAM 芯片和SRAM 芯片通常有何不同? 解:主要区别有: ① DRAM 记忆单元是利用栅极电容存储信息;SRAM 记忆单元利用双稳态触发器来存储信息。 ② DRAM 集成度高,功耗小,但存取速度慢,一般用来组成大容量主存系统;SRAM的存取速度快,但集成度低,功耗也较大,所以一般用来组成高速缓冲存储器和小容量主存系统。 ③ SRAM 芯片需要有片选端 ,DRAM 芯片可以不设,而用行选通信号、列选通兼作片选信号。 ④ SRAM 芯片的地址线直接与容量相关,而DRAM 芯片常采用了地址复用技术,以减少地址线的数量。 8 .有哪几种只读存储器? 它们各自有何特点? 解:MROM :可靠性高,集成度高,形成批量之后价格便宜,但用户对制造厂的依赖性过大,灵活性差。 PROM :允许用户利用专门的设备(编程器)写入自己的程序,但一旦写入后,其内容将无法改变。写入都是不可逆的,所以只能进行一次性写入。 EPROM :不仅可以由用户利用编程器写入信息,而且可以对其内容进行多次改写。 EPROM 又可分为两种:紫外线擦除(UVEPROM)和电擦除(EEPROM) 。 闪速存储器:既可在不加电的情况下长期保存信息,又能在线进行快速擦除与重写,兼备了EEPROM 和RAM 的优点。 9 .说明存取周期和存取时间的区别。 解:存取周期是指主存进行一次完整的读写操作所需的全部时间,即连续两次访问存储器操作之间所需要的最短时间。存取时间是指从启动一次存储器操作到完成该操作所经历的时间。存取周期一定大于存取时间。 10 .一个1K × 8 的存储芯片需要多少根地址线、数据输入线和输出线? 解:需要10 根地址线,8 根数据输入和输出线。 11 .某机字长为32 位,其存储容量是64KB ,按字编址的寻址范围是多少? 若主存以字节编址,试画出主存字地址和字节地址的分配情况。 解:某机字长为32 位,其存储容量是64KB ,按字编址的寻址范围是16KW 。若主存以字节编址,每一个存储字包含4 个单独编址的存储字节。假设采用大端方案,即字地址等于最高有效字节地址,且字地址总是等于4 的整数倍,正好用地址码的最末两位来区分同一个字中的4 个字节。主存字地址和字节地址的分配情况如图5-19 所示。
12 .一个容量为16K × 32 位的存储器,其地址线和数据线的总和是多少? 当选用下列不同规格的存储芯片时,各需要多少片? 1K×4位,2K×8位,4K×4位,16K×1位,4K×8位,8K×8位。 解:地址线14 根,数据线32 根,共46 根。 若选用不同规格的存储芯片,则需要:1K×4位芯片128片,2K×8位芯片32片,4K×4位芯片 32片,16K×1位芯片32片,4K×8位芯片16片,8K×8位芯片8 片。 13 .现有1024 × 1 的存储芯片,若用它组成容量为16K × 8 的存储器。试求: (1) 实现该存储器所需的芯片数量? (2) 若将这些芯片分装在若干块板上,每块板的容量为4K × 8 ,该存储器所需的地址线总位数是多少? 其中几位用于选板? 几位用于选片? 几位用作片内地址? 解:(1) 需1024 × 1 的芯片128 片。 (2) 该存储器所需的地址线总位数是14位,其中2位用于选板,2位用于选片,10位用作片内地址。 14 .已知某机字长8 位,现采用半导体存储器作主存,其地址线为16 位,若使用1K × 4 的SRAM 芯片组成该机所允许的最大主存空间,并采用存储模板结构形式。 (1) 若每块模板容量为4K × 8 ,共需多少块存储模板? (2) 画出一个模板内各芯片的连接逻辑图。 解:(1) 根据题干可知存储器容量为216 = 64KB ,故共需16 块存储模板。 (2) 一个模板内各芯片的连接逻辑图如图5-20 所示。
15 .某半导体存储器容量16K × 8 ,可选SRAM 芯片的容量为4K × 4 ;地址总线A15 ~ A0 (低) ,双向数据总线D7 ~ D0 (低) ,由R/W线控制读/写。请设计并画出该存储器的逻辑图,并注明地址分配、片选逻辑及片选信号的极性。 解:存储器的逻辑图与图5唱20 很相似,区别仅在于地址线的连接上,故省略。 地址分配如下:
16 .现有如下存储芯片:2K × 1 的ROM 、4K × 1 的RAM 、8K × 1 的ROM 。若用它们组成容量为16KB 的存储器,前4KB 为ROM ,后12KB 为RAM ,CPU 的地址总线16 位。 (1) 各种存储芯片分别用多少片? (2) 正确选用译码器及门电路,并画出相应的逻辑结构图。 (3) 指出有无地址重叠现象。 解:(1) 需要用2K × 1 的ROM 芯片16 片,4K × 1 的RAM 芯片24片。不能使用8K × 1 的ROM 芯片,因为它大于ROM 应有的空间。 (2) 各存储芯片的地址分配如下:
17 .用容量为16K × 1 的DRAM 芯片构成64KB 的存储器。 (1) 画出该存储器的结构框图。
(2) 设存储器的读/写周期均为0 .5μs ,CPU 在1μs 内至少要访存一次,试问采用哪种刷新方式比较合理? 相邻两行之间的刷新间隔是多少? 对全部存储单元刷新一遍所需的实际刷新时间是多少? 解:(1) 存储器的结构框图如图5-22 所示。
(2) 因为要求CPU 在1μs 内至少要访存一次,所以不能使用集中刷新方式,分散和异步刷新方式都可以使用,但异步刷新方式比较合理。 相邻两行之间的刷新间隔= 最大刷新间隔时间÷ 行数= 2ms ÷ 128 = 15 .625μs 。取 15 .5μs ,即进行读或写操作31 次之后刷新一行。 对全部存储单元刷新一遍所需的实际刷新时间= 0 .5μs × 128 = 64μs 18 .有一个8 位机,采用单总线结构,地址总线16 位(A15 ~ A0 ) ,数据总线8 位(D7 ~ D0 ) ,控制总线中与主存有关的信号有MREQ(低电平有效允许访存)和R/W(高电平为读命令,低电平为写命令) 。 主存地址分配如下:从0 ~ 8191 为系统程序区,由ROM 芯片组成;从8192 ~ 32767 为用户程序区;最后(最大地址)2K 地址空间为系统程序工作区。(上述地址均用十进制表示,按字节编址。) 现有如下存储芯片:8K × 8 的ROM ,16K × 1 、2K × 8 、4K × 8 、8K × 8 的SRAM 。请从上述规格中选用芯片设计该机主存储器,画出主存的连接框图,并请注意画出片选逻辑及与CPU 的连接。 解:根据CPU 的地址线、数据线,可确定整个主存空间为64K × 8 。系统程序区由ROM 芯片组成;用户程序区和系统程序工作区均由RAM 芯片组成。共需:8K × 8 的ROM 芯片1 片,8K × 8 的SRAM 芯片3 片,2K × 8 的SRAM 芯片1 片。主存地址分配如图5-23 所示,主存的连接框图如图5-24 所示。
19 .某半导体存储器容量15KB ,其中固化区8KB ,可选EPROM 芯片为4K × 8 ;可随机读/写区7KB ,可选SRAM 芯片有:4K × 4 、2K × 4 、1K × 4 。地址总线A15 ~ A0 (A0 为最低位) ,双向数据总线D7 ~ D0 (D0 为最低位) ,R/W控制读/写,MREQ为低电平时允许存储器工作信号。请设计并画出该存储器逻辑图,注明地址分配、片选逻辑、片选信号极性等。
20 .某机地址总线16 位A15 ~ A0 (A0 为最低位) ,访存空间64KB 。外围设备与主存统一编址,I/O 空间占用FC00 ~ FFFFH 。现用2164 芯片(64K × 1)构成主存储器,请设计并画出该存储器逻辑图,并画出芯片地址线、数据线与总线的连接逻辑以及行选信号与列选信号的逻辑式,使访问I/O 时不访问主存。动态刷新逻辑可以暂不考虑。 解:存储器逻辑图如图5-26 所示,为简单起见,在图中没有考虑行选信号和列选信 号,行选信号和列选信号的逻辑式可参考下题。
在64KB 空间的最后1KB 为I/O 空间,在此区间CS无效,不访问主存。 21 .已知有16K × 1 的DRAM 芯片,其引脚功能如下:地址输入A6 ~ A0 ,行地址选择RAS ,列地址选择CAS ,数据输入端DIN ,数据输出端DOUT ,控制端WE 。请用给定芯片构成256KB 的存储器,采用奇偶校验,试问:需要芯片的总数是多少? 并请: (1) 正确画出存储器的连接框图。 (2) 写出各芯片RAS和CAS形成条件。 (3) 若芯片内部采用128 × 128 矩阵排列,求异步刷新时该存储器的刷新间隔。 解:(1) 需要的芯片数= 128 片,存储器的连接框图如图5-27 所示。
(3) 若芯片内部采用128 × 128 矩阵排列,设芯片的最大刷新间隔时间为2ms ,则相 邻两行之间的刷新间隔为: 刷新间隔= 最大刷新间隔时间÷ 行数= 2ms ÷ 128 = 15 .625μs 可取刷新间隔15 .5μs 。22.并行存储器有哪几种编址方式? 简述低位交叉编址存储器的工作原理。 解:并行存储器有单体多字、多体单字和多体多字等几种系统。 多体交叉访问存储器可分为高位交叉编址存储器和低位交叉编址存储器。低位交叉 编址又称为横向编址,连续的地址分布在相邻的存储体中,而同一存储体内的地址都是不 连续的。存储器地址寄存器的低位部分经过译码选择不同的存储体,而高位部分则指向 存储体内的存储字。如果采用分时启动的方法,可以在不改变每个存储体存取周期的前 提下,提高整个主存的速度。 22 .并行存储器有哪几种编址方式? 简述低位交叉编址存储器的工作原理。 解:并行存储器有单体多字、多体单字和多体多字等几种系统。多体交叉访问存储器可分为高位交叉编址存储器和低位交叉编址存储器。低位交叉编址又称为横向编址,连续的地址分布在相邻的存储体中,而同一存储体内的地址都是不连续的。存储器地址寄存器的低位部分经过译码选择不同的存储体,而高位部分则指向存储体内的存储字。如果采用分时启动的方法,可以在不改变每个存储体存取周期的前提下,提高整个主存的速度。 23 .什么是高速缓冲存储器? 它与主存是什么关系? 其基本工作过程如何? 解:高速缓冲存储器位于主存和CPU 之间,用来存放当前正在执行的程序段和数据中的活跃部分,使CPU 的访存操作大多数针对Cache 进行,从而使程序的执行速度大大提高。高速缓冲存储器的存取速度接近于CPU 的速度,但是容量较小,它保存的信息只是主存中最急需处理的若干块的副本。当CPU 发出读请求时,如果Cache 命中,就直接对Cache 进行读操作,与主存无关;如果Cache 不命中,则仍需访问主存,并把该块信息一次从主存调入Cache 内。若此时Cache 已满,则须根据某种替换算法,用这个块替换掉Cache 中原来的某块信息。 24 .Cache 做在CPU 芯片内有什么好处? 将指令Cache 和数据Cache 分开又有什么好处? 解:Cache 做在CPU 芯片内可以提高CPU 访问Cache 的速度。将指令Cache 和数据Cache 分开的好处是分体缓存支持并行访问,即在取指部件取指令的同时,取数部件要取数据。并且,指令在程序执行中一般不需要修改,故指令Cache 中的内容不需写回到主存中去。 25 .设某机主存容量为4MB ,Cache 容量为16KB ,每块包含8 个字,每字32 位,设计一个四路组相联映像(即Cache 每组内共有四个块)的Cache 组织,要求: (1) 画出主存地址字段中各段的位数。 (2) 设Cache 的初态为空,CPU 依次从主存第0 、1 、2 、⋯ 、99 号单元读出100 个字(主 存一次读出一个字) ,并重复按此次序读8 次,问命中率是多少? (3) 若Cache 的速度是主存的6 倍,试问有Cache 和无Cache 相比,速度提高多少倍? 解:(1) 主存容量为4MB ,按字节编址,所以主存地址为22 位,地址格式如图5-29所示。
(2) 由于每个字块有8 个字,所以主存第0 、1 、2 、⋯ 、99 号字单元分别在字块0 ~ 12 中,采用四路组相联映像将分别映像到第0 组~ 12 组中,但Cache 起始为空,所以第一次读时每一块中的第一个单元没命中,但后面7 次每个单元均可以命中。
(3) 设Cache 的存取周期为T ,则主存的存取周期为6 T 。
无Cache 的访存时间为6 T 所以速度提高倍数= 6 ÷ 1 .096 = 5 .47 倍。 26 .什么叫虚拟存储器? 采用虚拟存储技术能解决什么问题? 解:虚拟存储器由主存储器和联机工作的辅助存储器(通常为磁盘存储器)共同组成,这两个存储器在硬件和系统软件的共同管理下工作,对于应用程序员,可以把它们看作是一个单一的存储器。 采用虚拟存储技术可以解决主存容量不足的问题。虚拟存储器将主存和辅存的地址空间统一编址,形成一个庞大的存储空间。在这个大空间里,用户可以自由编程,完全不必考虑程序在主存是否装得下以及这些程序将来在主存中的实际存放位置。 27 . 已知采用页式虚拟存储器, 某程序中一条指令的虚地址是: 。该程序的页表起始地址是0011 ,页面大小1K ,页表中有关单元最 末四位(实页号)见下表:
请指出指令地址(虚地址)变换后的主存实地址。 解:页面大小1K ,页内地址10 位,根据页表,可以得出主存实地址为000 。
第六章 1 .控制器有哪几种控制方式? 各有何特点? 解:控制器的控制方式可以分为3 种:同步控制方式、异步控制方式和联合控制方式。 同步控制方式的各项操作都由统一的时序信号控制,在每个机器周期中产生统一数目的节拍电位和工作脉冲。这种控制方式设计简单,容易实现;但是对于许多简单指令来说会有较多的空闲时间,造成较大数量的时间浪费,从而影响了指令的执行速度。异步控制方式的各项操作不采用统一的时序信号控制,而根据指令或部件的具体情况决定,需要多少时间,就占用多少时间。异步控制方式没有时间上的浪费,因而提高了机器的效率,但是控制比较复杂。联合控制方式是同步控制和异步控制相结合的方式。 2 .什么是三级时序系统? 解:三级时序系统是指机器周期、节拍和工作脉冲。计算机中每个指令周期划分为若干个机器周期,每个机器周期划分为若干个节拍,每个节拍中设置一个或几个工作脉冲。 3 .控制器有哪些基本功能? 它可分为哪几类? 分类的依据是什么? 解:控制器的基本功能有: (1) 从主存中取出一条指令,并指出下一条指令在主存中的位置。 (2) 对指令进行译码或测试,产生相应的操作控制信号,以便启动规定的动作。 (3) 指挥并控制CPU 、主存和输入输出设备之间的数据流动。控制器可分为组合逻辑型、存储逻辑型、组合逻辑与存储逻辑结合型3 类,分类的依据在于控制器的核心——— 微操作信号发生器(控制单元CU)的实现方法不同。 4 .中央处理器有哪些功能? 它由哪些基本部件所组成? 解:从程序运行的角度来看,CPU 的基本功能就是对指令流和数据流在时间与空间上实施正确的控制。对于冯· 诺依曼结构的计算机而言,数据流是根据指令流的操作而形成的,也就是说数据流是由指令流来驱动的。中央处理器由运算器和控制器组成。 5 .中央处理器中有哪几个主要寄存器? 试说明它们的结构和功能。 解:CPU 中的寄存器是用来暂时保存运算和控制过程中的中间结果、最终结果及控制、状态信息的,它可分为通用寄存器和专用寄存器两大类。通用寄存器可用来存放原始数据和运算结果,有的还可以作为变址寄存器、计数器、地址指针等。专用寄存器是专门用来完成某一种特殊功能的寄存器,如程序计数器PC 、 指令寄存器IR 、存储器地址寄存器MAR 、存储器数据寄存器MDR 、状态标志寄存器PSWR 等。 6 .某机CPU 芯片的主振频率为8MHz ,其时钟周期是多少μs ? 若已知每个机器周期平均包含4 个时钟周期,该机的平均指令执行速度为0 .8MIPS ,试问: (1) 平均指令周期是多少μs ? (2) 平均每个指令周期含有多少个机器周期? (3) 若改用时钟周期为0 .4μs 的CPU 芯片,则计算机的平均指令执行速度又是多少MIPS ? (4) 若要得到40 万次/s 的指令执行速度,则应采用主振频率为多少MHz 的CPU芯片? 解:时钟周期= 1 ÷ 8MHz = 0 .125μs (1) 平均指令周期= 1 ÷ 0 .8MIPS = 1 .25μs (2) 机器周期= 0 .125μs × 4 = 0 .5μs 平均每个指令周期的机器周期数= 1 .25μs ÷ 0 .5μs ÷ 4 = 2 .5
(4) 主振频率= 4MHz 7 .以一条典型的单地址指令为例,简要说明下列部件在计算机的取指周期和执行周期中的作用。 (1) 程序计数器PC ; (2) 指令寄存器IR ; (3) 算术逻辑运算部件ALU ; (4) 存储器数据寄存器MDR ; (5) 存储器地址寄存器MAR 。 解:(1) 程序计数器PC :存放指令地址; (2) 指令寄存器IR :存放当前指令; (3) 算术逻辑运算部件ALU :进行算逻运算; (4) 存储器数据寄存器MDR :存放写入或读出的数据/指令; (5) 存储器地址寄存器MAR :存放写入或读出的数据/指令的地址。以单地址指令“加1(INC A)”为例,该指令分为3 个周期:取指周期、分析取数周期、执行周期。3 个周期完成的操作如表6-2 所示。
8 .什么是指令周期? 什么是CPU 周期? 它们之间有什么关系? 解:指令周期是指取指令、分析取数到执行指令所需的全部时间。CPU 周期(机器周期)是完成一个基本操作的时间。一个指令周期划分为若干个CPU 周期。 9 .指令和数据都存放在主存,如何识别从主存储器中取出的是指令还是数据? 解:指令和数据都存放在主存,它们都以二进制代码形式出现,区分的方法为: (1) 取指令或数据时所处的机器周期不同:取指周期取出的是指令;分析取数或执行周期取出的是数据。 (2) 取指令或数据时地址的来源不同:指令地址来源于程序计数器;数据地址来源于地址形成部件。 10 .CPU 中指令寄存器是否可以不要? 指令译码器是否能直接对存储器数据寄存器MDR 中的信息译码? 为什么? 请以无条件转移指令JMP A 为例说明。 解:指令寄存器不可以不要。指令译码器不能直接对MDR 中的信息译码,因为在取指周期MDR 的内容是指令,而在取数周期MDR 的内容是操作数。以JMP A 指令为例,假设指令占两个字,第一个字为操作码,第二个字为转移地址,它们从主存中取出时都需要经过MDR ,其中只有第一个字需要送至指令寄存器,并且进行指令的译码,而第二个字不需要送指令寄存器。 11 .设一地址指令格式如下: @ OP A 现在有4 条一地址指令:LOAD(取数) 、ISZ(加“1”为零跳) 、DSZ(减“1”为零跳) 、STORE(存数) ,在一台单总线单累加器结构的机器上运行,试排出这4 条指令的微操作序列。要求:当排ISZ 和DSZ 指令时不要破坏累加寄存器Acc 原来的内容。 解:(1) LOAD(取数)指令 PC → MAR ,READ ;取指令 MM → MDR MDR → IR ,PC + 1 → PC A → MAR ,READ ;取数据送Acc MM → MDR MDR → Acc (2) ISZ(加“1”为零跳)指令 取指令微操作略。 A → MAR ,READ ;取数据送Acc MM → MDR MDR → Acc Acc+ 1 → Acc ;加1 If Z = 1 then PC + 1 → PC ;结果为0 ,PC + 1 Acc → MDR ,WRITE ;保存结果 MDR → MM Acc - 1 → Acc ;恢复Acc (3) DSZ(减“1”为零跳)指令 取指令微操作略。 A → MAR ,READ ;取数据送Acc MM → MDR MDR → Acc Acc - 1 → Acc ;减1 If Z = 1 then PC + 1 → PC ;结果为0 ,PC + 1 Acc → MDR ,WRITE ;保存结果 MDR → MM Acc+ 1 → Acc ;恢复Acc (4) STORE(存数)指令: 取指令微操作略。 A → MAR ;Acc 中的数据写 入主存单元 Acc → MDR ,WRITE MDR → MM 12 .某计算机的CPU 内部结构如图6唱22 所示。两组总线之间的所有数据传送通过ALU 。ALU 还具有完成以下功能的能力: F = A ; F = B F = A + 1 ; F = B + 1 F = A - 1 ; F = B - 1 写出转子指令(JSR)的取指和执行周期的微操作序列。JSR 指令占两个字,第一个字是操作码,第二个 字是子程序的入口地址。返回地址保存在存储器堆栈中,堆栈指示器始终指向栈顶。
解: ① PC → B ,F = B ,F → MAR ,Read ;取指令的第一个字 ② PC → B ,F = B + 1 ,F → PC ③ MDR → B ,F = B ,F → IR ④ PC → B ,F = B ,F → MAR ,Read ;取指令的第二个字 ⑤ PC → B ,F = B + 1 ,F → PC ⑥ MDR → B ,F = B ,F → Y ⑦ SP → B ,F = B - 1 ,F → SP ,F → MAR ;修改栈指针,返回地址压入堆栈 ⑧ PC → B ,F = B ,F → MDR ,Write ⑨ Y → A ,F = A ,F → PC ;子程序的首地址→ PC ⑩ End 13 .某机主要部件如图6-23 所示。 (1) 请补充各部件间的主要连接线,并注明数据流动方向。 (2) 拟出指令ADD (R1 ) ,(R2 ) + 的执行流程(含取指过程与确定后继指令地址) 。该指令的含义是进行加法操作,源操作数地址和目的操作数地址分别在寄存器R1 和R2中,目的操作数寻址方式为自增型寄存器间址。 解:(1) 将各部件间的主要连接线补充完后如图6-24 所示。 (2) 指令ADD (R1 ) ,(R2 ) + 的含义为 ((R1 )) + ((R2 )) → (R2 ) (R2 ) + 1 → R2 指令的执行流程如下: ① (PC) → MAR ;取指令
② Read ③ M(MAR) → MDR → IR ④ (PC) + 1 → PC ⑤ (R1 ) → MAR ;取被加数 ⑥ Read ⑦ M(MAR) → MDR → C ⑧ (R2 ) → MAR ;取加数 ⑨ Read ⑩ M(MAR) → MDR → D (R2 ) + 1 → R2 ;修改目的地址 (C) + (D) → MDR ;求和并保存结果 Write MDR → MM 14 .CPU 结构如图6唱25 所示,其中有一个累加寄存器AC 、一个状态条件寄存器和其他4 个寄存器,各部件之间的连线表示数据通路,箭头表示信息传送方向。 (1) 标明4 个寄存器的名称。 (2) 简述指令从主存取出送到控制器的数据通路。 (3) 简述数据在运算器和主存之间进行存取访问的数据通路。
解:(1) 这4 个寄存器中,a 为存储器数据寄存器MDR ,b 为指令寄存器IR ,c 为存储器地址寄存器MAR ,d 为程序计数器PC 。 (2) 取指令的数据通路:PC → MAR → MM → MDR → IR (3) 数据从主存中取出的数据通路(设数据地址为X) :X → MAR → MM → MDR → ALU → AC 数据存入主存中的数据通路(设数据地址为Y) :Y → MAR ,AC → MDR → MM 15 .什么是微命令和微操作? 什么是微指令? 微程序和机器指令有何关系? 微程序和程序之间有何关系? 解:微命令是控制计算机各部件完成某个基本微操作的命令。微操作是指计算机中最基本的、不可再分解的操作。微命令和微操作是一一对应的,微命令是微操作的控制信号,微操作是微命令的操作过程。微令是若干个微命令的集合。微程序是机器指令的实时解释器,每一条机器指令都对应一个微程序。微程序和程序是两个不同的概念。微程序是由微指令组成的,用于描述机器指令,实际上是机器指令的实时解释器,微程序是由计算机的设计者事先编制好并存放在控制存储器中的,一般不提供给用户;程序是由机器指令组成的,由程序员事先编制好并存放在主存储器中。 16 .什么是垂直型微指令? 什么是水平型微指令? 它们各有什么特点? 又有什么区别? 解:垂直型微指令是指一次只能执行一个微命令的微指令;水平型微指令是指一次能定义并能并行执行多个微命令的微指令。垂直型微指令的并行操作能力差,一般只能实现一个微操作,控制1 ~ 2 个信息传送通路,效率低,执行一条机器指令所需的微指令数目多,执行时间长;但是微指令与机器指令很相似,所以容易掌握和利用,编程比较简单,不必过多地了解数据通路的细节,且微指令字较短。水平型微指令的并行操作能力强,效率高,灵活性强,执行一条机器指令所需微指令的数目少,执行时间短;但微指令字较长,增加了控存的横向容量,同时微指令和机器指令的差别很大,设计者只有熟悉了数据通路,才有可能编制出理想的微程序,一般用户不易掌握。 17 .水平型和垂直型微程序设计之间各有什么区别? 串行微程序设计和并行微程序设计有什么区别? 解:水平型微程序设计是面对微处理器内部逻辑控制的描述,所以把这种微程序设计方法称为硬方法;垂直型微程序设计是面向算法的描述,所以把这种微程序设计方法称为软方法。在串行微程序设计中,取微指令和执行微指令是顺序进行的,在一条微指令取出并执行之后,才能取下一条微指令;在并行微程序设计中,将取微指令和执行微指令的操作重叠起来,从而缩短微周期。 18 .图6唱26 给出了某微程序控制计算机的部分微指令序列。图中每一框代表一条 微指令。分支点a 由指令寄存器IR 的第5 、6 两位决定。分支点b 由条件码C0 决定。现
采用下址字段实现该序列的顺序控制。已知微指令地址寄存器字长8 位。 (1) 设计实现该微指令序列的微指令字之顺序控制字段格式。 (2) 给出每条微指令的二进制编码地址。 (3) 画出微程序控制器的简化框图。 解:(1) 该微程序流程有两处有分支的地方,第一处有4 路分支,由指令操作码 IR5 IR6 指向4 条不同的微指令,第二处有2 路分支,根据运算结果C0 的值决定后继微地 址。加上顺序控制,转移控制字段取2 位。图6唱26 中共有15 条微指令,则下址字段至少 需要4 位,但因已知微指令地址寄存器字长8 位(μMAR7 ~ μMAR0 ) ,故下址字段取8 位。微指令的顺序控制字段格式如图6-27 所示。
(2) 转移控制字段2 位: 00 顺序控制 01 由IR5 IR6 控制修改μMAR4 ,μMAR3 。 10 由C0 控制修改μMAR5 。 微程序流程的微地址安排如图6-28 所示。每条微指令的二进制编码地址见表6-3 。
注:每条微指令前的微地址用十六进制表示。图6-28 微程序流程的微地址安排
(3) 微程序控制器的简化框图略。 19 .已知某机采用微程序控制方式,其控制存储器容量512 × 48 位,微程序可在整个控制存储器中实现转移,可控制转移的条件共4 个,微指令采用水平型格式,后继指令地址采用断定方式,微指令格式如图6-29 所示。
(1) 微指令中的3 个字段分别应为多少位? (2) 画出围绕这种微指令格式的微程序控制器逻辑框图。 解:(1) 因为控制转移的条件共4 个,则判别测试字段为2 位;因为控存容量为512个单元,所以下地址字段为9 位;微命令字段是(48 - 2 - 9) = 37 位。 (2) 对应上述微指令格式的微程序控制器逻辑框图如图6-30 。 20 .某机有8 条微指令I1 ~ I8 ,每条微指令所含的微命令控制信号如表6-4 所列。
图6唱30 微程序控制器逻辑框图
a ~ j 分别代表10 种不同性质的微命令信号,假设一条微指令的操作控制字段为8 位,请安排微指令的操作控制字段格式,并将全部微指令代码化。 解:因为微指令的操作控制字段只有8 位,所以不能采用直接控制法。又因为微指令中有多个微命令是兼容性的微命令,如微指令I1 中的微命令a ~ e ,故也不能采用最短编码法。最终选用字段编码法和直接控制法相结合的方法。将互斥的微命令安排在同一段内,兼容的微命令安排在不同的段内。b 、i 、j 这3 个微命令是互斥的微命令,把它们安排在一个段内,e 、f 、h 这3 个微命令也是互斥的,把它们也安排在另一个段内。此微指令的操作控制字段格式如图6-31 所示。 其中:字段1 的译码器输出对应的微命令为 00 无 01 b 10 i 11 j 字段2 的译码器输出对应的微命令为 00 无 01 e 10 f 11 h 将全部8 条微指令代码化可以得到 I1 : I2 : I3 : I4 : I5 : I6 : I7 : I8 :
21 .在微程序控制器中,微程序计数器μPC 可以用具有加“1”功能的微地址寄存器 μMAR 来代替,试问程序计数器PC 是否可以用具有加“1”功能的存储器地址寄存器 MAR 代替? 解:在微程序控制器中不可以用MAR 来代替PC 。因为控存中只有微指令,为了降低成本,可以用具有计数功能的微地址寄存器(μMAR)来代替μPC 。而主存中既有指令又有数据,它们都以二进制代码形式出现,取指令和数据时地址的来源是不同的。取指令:(PC) → MAR 取数据:地址形成部件→ MAR 所以不能用MAR 代替PC 。
第七章 1 .外部设备有哪些主要功能? 可以分为哪些大类? 各类中有哪些典型设备? 解:外部设备的主要功能有数据的输入、输出、成批存储以及对信息的加工处理等。 外部设备可以分为五大类:输入输出设备、辅助存储器、终端设备、过程控制设备和脱机设备。其典型设备有键盘、打印机、磁盘、智能终端、数/模转换器和键盘- 软盘数据站等。 2 .说明磁介质存储器的存储原理。 解:磁介质存储器的存储过程是一种电磁转换的过程。在磁介质存储器中,信息是记录在一薄层磁性材料上的,这个薄层称为磁层。磁层与所附着的载体称为记录介质或记录媒体。磁头是磁记录设备的关键部件之一,是一种电磁转换元件,能把电脉冲表示的二进制代码转换成磁记录介质上的磁化状态,即电→ 磁转换;反过来,能把磁记录介质上的磁化状态转换成电脉冲,即磁→ 电转换。 3 .分别用RZ 、NRZ 、NRZ唱1 、PE 、FM 、MFM 和M2 FM 制记录方式记录下述数据序列,画出写电流波形。 (1)10 (2) 00 解:(1) 写电流波形如图7-9(a)所示。 (2)写电流波形如图7-9(b)所示。
4 .若对磁介质存储器写入数据序列10011 ,请画出不归零唱1 制、调相制、调频制、改进的调频制等记录方式的写电流波形。 解:写电流波形如图7-10 所示。
5 .主存储器与磁介质存储器在工作速度方面的指标有什么不同? 为什么磁盘存储器采用两个以上的指标来说明其工作速度? 解:主存储器速度指标主要有存取速度和存取周期,而磁介质存储器速度指标为平均存取时间,这是因为磁介质存储器采用顺序存取或直接存取方式。磁盘存储器的平均存取时间至少应当包括平均寻道时间和平均等待时间两部分,因为磁盘存储器首先需要将磁头移动到指定的磁道上,然后将记录块旋转到磁头下方才能进行读写。 6 .某磁盘组有六片磁盘,每片可有两个记录面,存储区域内径为22cm ,外径为33cm ,道密度40 道/cm ,位密度400 b/cm ,转速2400 r/min 。试问: (1) 共有多少个存储面可用? (2) 共有多少个圆柱面? (3) 整个磁盘组的总存储容量有多少? (4) 数据传送率是多少? (5) 如果某文件长度超过一个磁道的容量,应将它记录在同一存储面上还是记录在同一圆柱面上? 为什么? (6) 如果采用定长信息块记录格式,直接寻址的最小单位是什么? 寻址命令中如何表示磁盘地址?
7 .某磁盘存储器的转速为3000 r/min ,共有4 个盘面,5道/mm ,每道记录信息12 288B ,最小磁道直径为230mm ,共有275 道。试问: (1) 该磁盘存储器的存储容量是多少? (2) 最高位密度和最低位密度是多少? (3) 磁盘的数据传送率是多少? (4) 平均等待时间是多少? 解:(1) 磁盘存储器的容量= 4 × 275 × 12 288B = 13 516 800B (2) 最高位密度D1=每道信息量÷内圈圆周长= 12 288÷(π×最小磁道直径)≈17B/mm 。 最低位密度D2 = 每道信息量÷ 外圈圆周长= 12 288÷(π×最大磁道直径)≈ 11 .5B/mm 。 (3) 磁盘数据传输率C = 50 × 12 288 = 614 400B/s
8 .某磁盘组有效盘面20个,每个盘面上有800个磁道。每个磁道上的有效记忆容量为13 000B ,块间隔235B ,旋转速度3000 r/min 。试问: (1) 在该磁盘存储器中,若以1000B 为一个记录,这样,一个磁道能存放10 个记录。若要存放12 万个记录,需要多少个圆柱面(一个记录不允许跨越多个磁道) ? (2) 这个磁盘存储器的平均等待时间是多少? (3) 数据传送率是多少? 解:(1) 一个圆柱面可存放200 个记录, 个记录需要600 个圆柱面。(2)平均等待时间为旋转半圈的时间,10ms 。
9 .某磁盘格式化为24 个扇区和20 条磁道。该盘能按需要选择顺时针或逆时针旋转,旋转一圈的时间为360ms ,读一块数据的时间为1ms 。该片上有3 个文件:文件A 从磁道6 、扇区1 开始占有2 块;文件B 从磁道2 、扇区5 开始占有5 块;文件C 从磁道5 、扇区3 开始占有3 块。 试问:该磁盘的平均等待时间为多少? 平均寻道时间是多少? 若磁头移动和磁盘转动不同时进行,且磁头的初始位置在磁道0 、扇区0 ,按顺序C 、B 、A 读出上述3 个文件,总的时间是多少? 在相同的初始位置情况下,读出上述3 个文件的最短时间是多少? 此时文件的读出次序应当怎样排列? 解:平均等待时间为180ms 。磁盘分为24 个扇区,等待一个扇区的时间为15ms 。 平均寻道时间为磁头移动10 条磁道的时间,设移动一个磁道的时间为n ,则平均寻道时间为10n 。 按顺序C 、B 、A 读出上述3 个文件,总的时间包括: 总的寻道时间:移动5 道时间+ 移动3 道时间+ 移动4 道时间= 移动12 道时间= 12n 总的等待时间:(3 + 1 + 9) × 15 = 195ms 总的读出数据时间:(3 + 5 + 2) × 1 = 10ms 读出上述3 个文件的最短时间包括: 总的寻道时间:移动2 道时间+ 移动3 道时间+ 移动1 道时间= 移动6 道时间= 6n 总的等待时间:(5 + 7 + 5) × 15 = 255ms 总的读出数据时间不变。 此时文件的读出次序为B 、C 、A 。 10 .什么是光盘? 简述光盘的工作原理。 解:相对于利用磁通变化和磁化电流进行读写的磁盘而言,用光学方式读写信息的圆盘称为光盘,以光盘为存储介质的存储器称为光盘存储器。CD唱ROM 光盘上有一条从内向外的由凹痕和平坦表面相互交替而组成的连续的螺旋形路径,当一束激光照射在盘面上,靠盘面上有无凹痕的不同反射率来读出程序和 数据。CD唱R 光盘的写入是利用聚焦成1μm 左右的激光束的热能,使记录介质表面的形状发生永久性变化而完成的,所以只能写入一次,不能抹除和改写。CD唱RW 光盘是利用激光照射引起记录介质的可逆性物理变化来进行读写的,光盘上有一个相位变化刻录层,所以CD唱RW 光盘又称为相变光盘。 11 .键盘属于什么设备? 它有哪些类型? 如何消除键开关的抖动? 简述非编码键盘查询键位置码的过程。 解:键盘是计算机系统不可缺少的输入设备。键盘可分为两大类型:编码键盘和非编码键盘。非编码键盘用较为简