计算机组成原理课后习题答案常国锋 武汉大学出版社.docx
- 文档编号:27971260
- 上传时间:2023-07-07
- 格式:DOCX
- 页数:29
- 大小:1.12MB
计算机组成原理课后习题答案常国锋 武汉大学出版社.docx
《计算机组成原理课后习题答案常国锋 武汉大学出版社.docx》由会员分享,可在线阅读,更多相关《计算机组成原理课后习题答案常国锋 武汉大学出版社.docx(29页珍藏版)》请在冰豆网上搜索。
计算机组成原理课后习题答案常国锋武汉大学出版社
第1章习题参考答案
1.电子数字计算机和电子模拟计算机的区别在哪里?
解:
电子数字计算机中处理的信息是在时间上离散的数字量,运算的过程是不连续
的;电子模拟计算机中处理的信息是连续变化的物理量,运算的过程是连续的。
2.冯·诺依曼计算机的特点是什么?
其中最主要的一点是什么?
解:
冯·诺依曼计算机的特点如下:
①计算机(指硬件)应由运算器、存储器、控制器、输入设备和输出设备五大基本部件组成;
②计算机内部采用二进制来表示指令和数据;
③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作。
第③点是最主要的一点。
3.计算机的硬件是由哪些部件组成的?
它们各有哪些功能?
解:
计算机的硬件应由运算器、存储器、控制器、输入设备和输出设备五大基本部件
组成。
它们各自的功能是:
①输入设备:
把人们编好的程序和原始数据送到计算机中去,并且将它们转换成计
算机内部所能识别和接受的信息方式。
②输出设备:
将计算机的处理结果以人或其他设备所能接受的形式送出计算机。
③存储器:
用来存放程序和数据。
④运算器:
对信息进行处理和运算。
⑤控制器:
按照人们预先确定的操作步骤,控制整个计算机的各部件有条不紊地自
动工作。
4.什么叫总线?
简述单总线结构的特点。
解:
总线是一组能为多个部件服务的公共信息传送线路,它能分时地发送与接收各
部件的信息。
单总线结构即各大部件都连接在单一的一组总线上,这个总线被称为系统总线。
CPU与主存、CPU与外设之间可以直接进行信息交换,主存与外设、外设与外设之间也可以直接进行信息交换,而无须经过CPU的干预。
5.简单描述计算机的层次结构,说明各层次的主要特点。
解:
现代计算机系统是一个硬件与软件组成的综合体,可以把它看成是按功能划分
的多级层次结构。
第0级为硬件组成的实体。
第1级是微程序级。
这级的机器语言是微指令集,程序员用微指令编写的微程序一
般是直接由硬件执行的。
第2级是传统机器级。
这级的机器语言是该机的指令集,程序员用机器指令编写的
程序可以由微程序进行解释。
第3级是操作系统级。
从操作系统的基本功能来看,一方面它要直接管理传统机器
中的软硬件资源,另一方面它又是传统机器的延伸。
第4级是汇编语言级。
这级的机器语言是汇编语言,完成汇编语言翻译的程序叫做
汇编程序。
第5级是高级语言级。
这级的机器语言就是各种高级语言,通常用编译程序来完成
高级语言翻译的工作。
第6级是应用语言级。
这一级是为了使计算机满足某种用途而专门设计的,因此这
一级语言就是各种面向问题的应用语言。
6.计算机系统的主要技术指标有哪些?
解:
计算机系统的主要技术指标有:
机器字长、数据通路宽度、主存容量和运算速
度等。
机器字长是指参与运算的数的基本位数,它是由加法器、寄存器的位数决定的。
数据通路宽度是指数据总线一次所能并行传送信息的位数。
主存容量是指主存储器所能存储的全部信息量。
运算速度与机器的主频、执行什么样的操作、主存本身的速度等许多因素有关。
第2章习题参考答案
1.已知下列数的原码表示,分别写出它们的补码表示。
[X]原=0.10100,[X]原=1.10111
2.已知下列数的补码表示,分别写出它们的真值。
[X]补=0.10100,[X]补=1.10111
3.某机字长16位,简述下列几种情况下所能表示数值的范围。
(1)无符号整数
(2)用原码表示定点小数
(3)用补码表示定点小数
(4)用原码表示定点整数
(5)用补码表示定点整数
4.某机字长32位,试分别写出无符号整数和带符号整数(补码)的表示范围(用十进制数表示)。
5.某浮点数字长12位,其中阶符1位,阶码数值3位,数符1位,尾数数值7位,阶码以2为底,阶码和尾数均用补码表示。
它所能表示的最大正数是多少?
最小规格化正数是多少?
绝对值最大的负数是多少?
6.一浮点数,其阶码部分为p位,尾数部分为g位,各包含一位符号位,均用补码表示;尾数基数r=2,该浮点数格式所能表示数的上限、下限及非零的最小正数是多少?
写出表达式。
7.试将(-0.1101)2用IEEE短浮点数格式表示出来。
8.对下列ASCII码进行译码。
1001001,0100001,1100001,1110111
1000101,1010000,1010111,0100100
9.以下列形式表示(5382)10
(1)8421码
(2)余3码
(3)2421码(4)二进制数
10.求有效信息位为01101110的海明校验码。
第3章习题参考答案
1.指令长度和机器字长有什么关系?
半字长指令、单字长指令、双字长指令分别表示什么意思?
解:
指令长度与机器字长没有固定的关系,指令长度可以等于机器字长,也可以大于或小于机器字长。
通常,把指令长度等于机器字长的指令称为单字长指令;指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。
2.零地址指令的操作数来自哪里?
一地址指令中,另一个操作数的地址通常可采用什么寻址方式获得?
各举一例说明。
解:
双操作数的零地址指令的操作数来自堆栈的栈顶和次栈顶。
双操作数的一地址指令的另一个操作数通常可采用隐含寻址方式获得,即将另一操作数预先存放在累加器中。
例如,前述零地址和一地址的加法指令。
3.举例说明哪几种寻址方式除去取指令以外不访问存储器?
哪几种寻址方式除去取指令外只需访问一次存储器?
完成什么样的指令,包括取指令在内共访问4次存储器?
解:
除去取指令以外不访问存储器:
立即寻址,寄存器寻址。
除去取指令外只需访问一次存储器:
直接寻址,寄存器间接寻址,变址寻址,基址寻址,相对寻址,页面寻址。
二级间接寻址包括取指令在内共访问4次存储器。
4.什么叫主程序和子程序?
调用子程序时还可采用哪几种方法保存返回地址?
画图说明调用子程序的过程。
解:
主程序就是指通常的程序,而子程序是一组可以公用的指令序列,只要知道子程序的入口地址就能调用它。
保存返回地址的方法有多种:
(1)用子程序的第一个字单元存放返回地址。
转子指令把返回地址存放在子程序的第一个字单元中,子程序从第二个字单元开始执行。
返回时将第一个字单元地址作为间接地址,采用间址方式返回主程序。
(2)用寄存器存放返回地址。
转子指令先把返回地址放到某一个寄存器中,再由子程序将寄存器中的内容转移到另一个安全的地方。
(3)用堆栈保存返回地址。
调用子程序的过程如下图所示,此时返回地址保存在堆栈中。
5.某机为定长指令字结构,指令长度16位;每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。
若双操作数指令已有K种,无操作数指令已有L种,问单操作数指令最多可能有多少种?
上述三类指令各自允许的最大指令条数是多少?
6.设某机为定长指令字结构,指令长度12位,每个地址码占3位,试提出一种分配方案,使该指令系统包含:
4条三地址指令,8条二地址指令,180条单地址指令。
7.指令格式同上题,能否构成:
三地址指令4条,单地址指令255条,零地址指令64条?
为什么?
8.指令中地址码的位数与直接访问的主存容量和最小寻址单位有什么关系?
解:
主存容量越大,所需的地址码位数就越长。
对于相同容量来说,最小寻址单位越小,地址码的位数就越长。
9.设某机字长32位,CPU有32个32位的通用寄存器,设计一个能容纳64种操作的单字长指令系统。
(1)如果是存储器间接寻址方式的寄存器-存储器型指令,能直接寻址的最大主存空间是多少?
(2)如果采用通用寄存器作为基址寄存器,能直接寻址的最大主存空间又是多少?
解:
因为计算机中共有64条指令,所以操作码占6位;32个通用寄存器,寄存器编号占5位;其余部分为地址码或标志位。
(1)如果是存储器间接寻址方式的寄存器-存储器型指令,操作码6位,寄存器编号5位,间址标志1位,地址码20位,直接寻址的最大主存空间是220字。
(2)如果采用通用寄存器作为基址寄存器,EA=(Rb)+A,能直接寻址的最大主存空间是232字。
第4章习题参考答案
1.设[x]补=x0.x1x2x3x4,其中xi取0或1,若要使x>-0.5,则x0、x1、x2、x3、x4的取值应满足什么条件?
答:
应满足的条件是:
①x0=0;②当x0=1时,x1=1且x2、x3、x4不全为0。
2.若32位定点小数的最高位为符号位,用补码表示,则所能表示的最大正数为 1-2-31 ,最小正数为 2-31 ,最大负数为 -2-31,最小负数为 -1 ;若32位定点整数的最高位为符号位,用原码表示,则所能表示的最大正数为 231-1 ,最小正数为1 ,最大负数为-1 ,最小负数为-(231-1) 。
3.若机器字长为32位,在浮点数据表示时阶符占1位,阶码值占7位,数符占1位,尾数值占23位,阶码用移码表示,尾数用原码表示,则该浮点数格式所能表示的最大正数为 (1-2-23)×2127 ,最小正数为 2-151,最大负数为 -2-151,最小负数为 -(1-2-23)×2127。
4.定点补码加减法运算中,产生溢出的条件是什么?
溢出判断的方法有哪几种?
如果是浮点加减运算,产生溢出的条件又是什么?
答:
定点补码加减运算中,产生溢出的条件是:
定点补码加减运算结果超出了定点数的表示范围。
溢出判断的方法有三种:
①采用单符号位法;②采用进位判断法;③采用双符号位法,这种方法又称为“变形补码”或“模4补码”。
浮点加减运算中,产生溢出的条件是:
浮点加减运算结果中阶码超出了它的表示范围。
5.已知X和Y,试用它们的变形补码计算出X-Y,并指出结果是否溢出。
(只做
(1))
(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
6.分别用原码乘法和补码乘法计算X×Y。
(只做
(1))
(1)X=0.11011,Y=-0.11111
(2)X=-0.11010,Y=-0.01110
原码乘法:
补码乘法:
7.分别用原码和补码加减交替法计算X÷Y。
(只做
(1))
(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
原码除法:
补码除法:
第五章习题参考答案
1.如何区别存储器和寄存器?
两者是一回事的说法对吗?
答:
存储器和寄存器不是一回事。
存储器在CPU的外边,专门用来存放程序和数据,访问存储器的速度较慢。
寄存器属于CPU的一部分,访问寄存器的速度很快。
2.存储器的主要功能是什么?
为什么要把存储系统分成若干个不同层次?
主要有哪些层次?
答:
存储器的主要功能是用来保存程序和数据。
存储系统是由几个容量、速度和价格各不相同的存储器用硬件、软件、硬件与软件相结合的方法连接起来的系统。
把存储系统分成若干个不同层次的目的是为了解决存储容量、存取速度和价格之间的矛盾。
由高速缓冲存储器、主存储器、辅助存储器构成的三级存储系统可以分为两个层次,其中高速缓存和主存间称为Cache-主存存储层次(Cache存储系统);主存和辅存间称为主存-辅存存储层次(虚拟存储系统)。
3.说明存取周期和存取时间的区别。
答:
存取周期是指主存进行一次完整的读写操作所需的全部时间,即连续两次访问存储器操作之间所需要的最短时间。
存取时间是指从启动一次存储器操作到完成该操作所经历的时间。
存取周期一定大于存取时间。
4.现有1024×1的存储芯片,若用它组成容量为16K×8的存储器。
试求:
(1)实现该存储器所需的芯片数量?
(2)若将这些芯片分装在若干块板上,每块板的容量为4K×8,该存储器所需的地址线总位数是多少?
其中几位用于选板?
几位用于选片?
几位用作片内地址?
答:
(1)需1024×1的芯片128片。
(2)该存储器所需的地址线总位数是14位,其中2位用于选板,2位用于选片,10位用作片内地址。
5.已知某机字长8位,现采用半导体存储器作主存,其地址线为16位,若使用1K×4的SRAM芯片组成该机所允许的最大主存空间,并采用存储模板结构形式。
(1)若每块模板容量为4K×8,共需多少块存储模板?
(2)画出一个模板内各芯片的连接逻辑图。
答:
(1)根据题干可知存储器容量为216=64KB,故共需16块存储模板。
(2)一个模板内各芯片的连接逻辑图如下图所示。
模板内各芯片的连接逻辑图
6.用容量为16K×1的DRAM芯片构成64KB的存储器,设存储器的读/写周期均为0.5μs,CPU在1μs内至少要访存一次,试问采用哪种刷新方式比较合理?
相邻两行之间的刷新间隔是多少?
对全部存储单元刷新一遍所需的实际刷新时间是多少?
答:
因为要求CPU在1μs内至少要访存一次,所以不能使用集中刷新方式,分散和异步刷新方式都可以使用,但异步刷新方式比较合理。
相邻两行之间的刷新间隔=最大刷新间隔时间÷行数=2ms÷128=15.625μs。
取15.5μs,即进行读或写操作31次之后刷新一行。
对全部存储单元刷新一遍所需的实际刷新时间=0.5μs×128=64μs。
7.什么是高速缓冲存储器?
它与主存是什么关系?
其基本工作过程如何?
答:
高速缓冲存储器位于主存和CPU之间,用来存放当前正在执行的程序段和数据中的活跃部分,使CPU的访存操作大多数针对Cache进行,从而使程序的执行速度大大提高。
高速缓冲存储器的存取速度接近于CPU的速度,但是容量较小,它保存的信息只是主存中最急需处理的若干块的副本。
当CPU发出读请求时,如果Cache命中,就直接对Cache进行读操作,与主存无关;如果Cache不命中,则仍需访问主存,并把该块信息一次从主存调入Cache内。
若此时Cache已满,则须根据某种替换算法,用这个块替换掉Cache中原来的某块信息。
第六章习题参考答案
1.中央处理器有哪些功能?
它由哪些基本部件所组成?
答:
从程序运行的角度来看,CPU的基本功能就是对指令流和数据流在时间与空间上实施正确的控制。
对于冯·诺依曼结构的计算机而言,数据流是根据指令流的操作而形成的,也就是说数据流是由指令流来驱动的。
中央处理器由运算器和控制器组成。
2.中央处理器中有哪几个主要寄存器?
试说明它们的结构和功能。
答:
CPU中的寄存器是用来暂时保存运算和控制过程中的中间结果、最终结果及控制、状态信息的,它可分为通用寄存器和专用寄存器两大类。
通用寄存器可用来存放原始数据和运算结果,有的还可以作为变址寄存器、计数器、地址指针等。
专用寄存器是专门用来完成某一种特殊功能的寄存器,如程序计数器PC、指令寄存器IR、存储器地址寄存器MAR、存储器数据寄存器MDR、状态标志寄存器PSWR等。
3.控制器有哪些基本功能?
它可分为哪几类?
分类的依据是什么?
答:
控制器的基本功能有:
(1)从主存中取出一条指令,并指出下一条指令在主存中的位置。
(2)对指令进行译码或测试,产生相应的操作控制信号,以便启动规定的动作。
(3)指挥并控制CPU、主存和输入输出设备之间的数据流动。
控制器可分为组合逻辑型、存储逻辑型、组合逻辑与存储逻辑结合型3类,分类的依据在于控制器的核心--微操作信号发生器(控制单元CU)的实现方法不同。
4.控制器有哪几种控制方式?
各有何特点?
答:
控制器的控制方式可以分为3种:
同步控制方式、异步控制方式和联合控制方式。
同步控制方式的各项操作都由统一的时序信号控制,在每个机器周期中产生统一数目的节拍电位和工作脉冲。
这种控制方式设计简单,容易实现;但是对于许多简单指令来说会有较多的空闲时间,造成较大数量的时间浪费,从而影响了指令的执行速度。
异步控制方式的各项操作不采用统一的时序信号控制,而根据指令或部件的具体情况决定,需要多少时间,就占用多少时间。
异步控制方式没有时间上的浪费,因而提高了机器的效率,但是控制比较复杂。
联合控制方式是同步控制和异步控制相结合的方式。
5.什么是三级时序系统?
答:
三级时序系统是指机器周期、节拍和工作脉冲。
计算机中每个指令周期划分为若干个机器周期,每个机器周期划分为若干个节拍,每个节拍中设置一个或几个工作脉冲。
6.什么是指令周期?
什么是CPU周期?
它们之间有什么关系?
答:
指令周期是指取指令、分析取数到执行指令所需的全部时间。
CPU周期(机器周期)是完成一个基本操作的时间。
一个指令周期划分为若干个CPU周期。
7.指令和数据都存放在主存,如何识别从主存储器中取出的是指令还是数据?
答:
指令和数据都存放在主存,它们都以二进制代码形式出现,区分的方法为:
(1)取指令或数据时所处的机器周期不同:
取指周期取出的是指令;分析取数或执行周期取出的是数据。
(2)取指令或数据时地址的来源不同:
指令地址来源于程序计数器;数据地址来源于地址形成部件。
8.CPU中指令寄存器是否可以不要?
指令译码器是否能直接对存储器数据寄存器MDR中的信息译码?
为什么?
请以无条件转移指令JMPA为例说明。
答:
指令寄存器不可以不要。
指令译码器不能直接对MDR中的信息译码,因为在取指周期MDR的内容是指令,而在取数周期MDR的内容是操作数。
以JMPA指令为例,假设指令占两个字,第一个字为操作码,第二个字为转移地址,它们从主存中取出时都需要经过MDR,其中只有第一个字需要送至指令寄存器,并且进行指令的译码,而第二个字不需要送指令寄存器。
9.什么是微命令和微操作?
什么是微指令?
微程序和机器指令有何关系?
微程序和程序之间有何关系?
答:
微命令是控制计算机各部件完成某个基本微操作的命令。
微操作是指计算机中最基本的、不可再分解的操作。
微命令和微操作是一一对应的,微命令是微操作的控制信号,微操作是微命令的操作过程。
微令是若干个微命令的集合。
微程序是机器指令的实时解释器,每一条机器指令都对应一个微程序。
微程序和程序是两个不同的概念。
微程序是由微指令组成的,用于描述机器指令,实际上是机器指令的实时解释器,微程序是由计算机的设计者事先编制好并存放在控制存储器中的,一般不提供给用户;程序是由机器指令组成的,由程序员事先编制好并存放在主存储器中。
10.某机的微指令格式中有10个独立的控制字段C0~C9,每个控制字段有Ni个互斥控制信号,Ni的值如下:
请回答:
(1)如果这10个控制字段,采用编码表示法,需要多少控制位?
(2)如果采用完全水平型编码方式,需要多少控制位?
答:
(1)如果这10个控制字段,采用编码表示法,需要31位控制位;
(2)如果采用完全水平型编码方式,需要69位控制位。
11.假设微地址转移逻辑表达式如下:
μA4=P2·ZF·T4
μA3=P1·IR15·T4
μA2=P1·IR14·T4
μA1=P1·IR13·T4
μA0=P1·IR12·T4
其中μA4~μA0为微地址寄存器的相应位,P1和P2为判别标志,ZF为零标志,IR15~IR12为指令寄存器IR的相应位,T4为时钟脉冲信号。
试说明上述逻辑表达式的含义,画出微地址转移逻辑图。
答:
逻辑表达式的含义为:
(1)在进行P1测试时,根据指令寄存器IR中的IR15~IR12修改μA3~μA0,进行16路分支;
(2)在进行P2测试时,根据零标志ZF修改μA4,进行2路分支:
(3)所有的表达式均分别和T4相与,表示在T4内形成后继微指令的微地址。
微地址转移逻辑图如下图所示,图中S4~S0分别对应微地址寄存器μA4~μA0的异步置“1”端,低电平有效。
微地址转移逻辑图
12.已知某机采用微程序控制方式,其控制存储器容量为512×48位。
微指令字长为48位,微程序可在整个控制存储器中实现转移,可控制微程序转移的条件共4个(直接控制),微指令采用水平型格式,如下图所示。
微指令格式
(1)微指令格式中的三个字段分别应为多少位?
(2)画出围绕这种微指令格式的微程序控制器逻辑框图。
答:
(1)判别测试字段占4位,直接微地址字段占9位,操作控制字段占35位。
(2)微程序控制器逻辑框图如下图所示。
微程序控制器逻辑框图
第7章习题参考答案
1.外部设备有哪些主要功能?
可以分为哪些大类?
各类中有哪些典型设备?
解:
外部设备的主要功能有数据的输入、输出、成批存储以及对信息的加工处理等。
外部设备可以分为五大类:
输入输出设备、辅助存储器、终端设备、过程控制设备和脱机设备。
其典型设备有键盘、打印机、磁盘、智能终端、数/模转换器和键盘-软盘数据站等。
2.说明磁介质存储器的存储原理。
解:
磁介质存储器的存储过程是一种电磁转换的过程。
在磁介质存储器中,信息是记录在一薄层磁性材料上的,这个薄层称为磁层。
磁层与所附着的载体称为记录介质或记录媒体。
磁头是磁记录设备的关键部件之一,是一种电磁转换元件,能把电脉冲表示的二进制代码转换成磁记录介质上的磁化状态,即电→磁转换;反过来,能把磁记录介质上的磁化状态转换成电脉冲,即磁→电转换。
3.主存储器与磁介质存储器在工作速度方面的指标有什么不同?
为什么磁盘存储器采用两个以上的指标来说明其工作速度?
解:
主存储器速度指标主要有存取速度和存取周期,而磁介质存储器速度指标为平均存取时间,这是因为磁介质存储器采用顺序存取或直接存取方式。
磁盘存储器的平均存取时间至少应当包括平均寻道时间和平均等待时间两部分,因为磁盘存储器首先需要将磁头移动到指定的磁道上,然后将记录块旋转到磁头下方才能进行读写。
4.某磁盘组有六片磁盘,每片可有两个记录面,存储区域内径为22cm,外径为33cm,道密度40道/cm,位密度400b/cm,转速2400r/min。
试问:
(1)共有多少个存储面可用?
(2)共有多少个圆柱面?
(3)整个磁盘组的总存储容量有多少?
(4)数据传送率是多少?
(5)如果某文件长度超过一个磁道的容量,应将它记录在同一存储面上还是记录在同一圆柱面上?
为什么?
(6)如果采用定长信息块记录格式,直接寻址的最小单位是什么?
寻址命令中如何表示磁盘地址?
5.键盘属于什么设备?
它有哪些类型?
如何消除键开关的抖动?
简述非编码键盘查询键位置码的过程。
解:
键盘是计算机系统不可缺少的输入设备。
键盘可分为两大类型:
编码键盘和非编码键盘。
非编码键盘用较为简单的硬件和专门的键盘扫描程序来识别按键的位置。
消除键开关抖动的方法分硬件和软件两种。
硬件的方法是增设去抖电路;软件的方法是在键盘程序中加入延时子程序,以避开抖动时间。
键盘扫描程序查询键位置码的过程为:
①查询是否有键按下。
②查询已按下键的位置。
③按行号和列号求键的位置码。
第8章习题参考答案
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机组成原理课后习题答案常国锋 武汉大学出版社 计算机 组成 原理 课后 习题 答案 常国锋 武汉大学 出版社