组成原理课后习题答案 联系客服

发布时间 : 星期一 文章组成原理课后习题答案更新完毕开始阅读dfc6890316fc700abb68fcfb

授课教材课后习题答案

第一章 计算机系统概论

1.比较数字计算机和模拟计算机的特点。

答:模拟计算机的特点是数值由连续量来表示,运算过程也是连续的,它用电压表示数据,采用电压组合和测量值的计算方式,盘上连线的控制方式。数字计算机的主要特点是按位运算,并且不连续地跳动计算,它用数字0和1表示数据,采用数字计数的计算方式,程序控制的控制方式。数字计算机与模拟计算机相比,精度高,数据存储量大,逻辑判断能力强。 2.数字计算机如何分类?分类的依据是什么?

答:数字计算机可分为专用计算机和通用计算机,是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。通用计算机又可分为巨型机、大型机、中型机、小型机、微型机、单片机。

3.数字计算机有哪些主要应用?

答:数字计算机的主要应用有:科学计算、自动控制、测量和测试、信息处理(事务处理、管理应用)、教育和卫生、家用电器、人工智能等。

4.冯.诺依曼型计算机的主要设计思想是什么?它由哪些主要组成部分?

答:将解题的程序(指令序列)存放在存储器中称为存储程序,而控制器依据存储的程序来控制全机协调地完成计算机任务叫做程序控制,存储程序并按地址顺序执行是冯.诺依曼型计算机的主要设计思想,也是机器自动工作的关键。它由运算器,控制器,存储器,接口及I/O设备组成。

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

答:存储器所有存储单元的总数称为存储器的存储容量。存储器是由许多存储单元组成的,每个存储单元都有编号,称为单元地址。由于计算机使用的信息既有指令又有数据,如果某字代表要处理的数据,称为数据字。如果某字为一条指令,称为指令字。 6.什么是指令?什么是程序?

答:每一个基本操作称为一条指令,而解算某一问题的一串有序指令序列,称为程序。 7.指令和数据均存放在内存中,计算机如何区分它们是指令还是数据?

答:计算机可以从时间和空间两方面来区分指令和数据,在时间上,取指周期从内存中取出的是指令,而执行周期从内存取出或往内存中写入的是数据,在空间上,从内存中取出指令送控制器,而执行周期从内存从取的数据送运算器、往内存写入的数据也是来自于运算器。 8.什么是内存?什么是外存?什么是CPU?什么是适配器?简述其功能。

答:内存是指计算机内的半导体存储器,包括ROM和RAM。ROM用来存放监控程序和一些不变的数据表格,RAM存放正在运算的程序和正在处理的数据,外存通常指的是硬盘、磁盘、磁带、光盘存储器等,用于存放暂不运行的程序和暂不处理的数据。CPU是运算器和控制器的合称,适配器是指连接主机与外设一个中间电路,也叫接口,其作用相当于一个转换器,保证外设与主机要求的相适应的形式发送和接收信息。 9.计算机的系统软件包括哪几类?说明它们的用途。

答:计算机的软件包括系统软件和应用软件。系统软件用来简化程序设计,简化使用方法,提高计算机的使用效率,发挥和扩大计算机的功能及用途。它可分为四类:(1)各种服务性程序,如诊数据程序、排错程序、练习程序等;(2)语言程序,如汇编程序、编译程序、解释程序等;(3)操作系统;(4)数据库管理系统(DBMS)。而应用软件是用户利用计算机来解决某些问题而编制的程序,如工程设计程序,数据加工程序,自动控制程序,企业管理程序、情报检索程序、科学计算程序等。 10.说明软件发展的演变过程。

答:在早期的计算机中,人们是直接用机器语言来编写程序的,这种程序称为手编程序或目的程序;后来,为了编写程序方便和提高使用效率,人们使用助记符来编写程序,称为汇编程序;为了进一步实现程序自动化和便于程序交流,使不熟悉具体计算机的人也能很方便地使用计算机,人们又创造了算法语言,用算法语言编写的程序称为源程序,源程序通过编译系统产生编译程序,也可通过解释系统进行解释执行;随着计算机技术的日益发展,人们又创造出操作系统;随着计算机在信息处理、情报检索及各种管理系统中应用的发展,要求大量处理某些数据,建立和检索大量的表格,于是产生了数据库管理系统。 11.现代计算机系统如何进行多级划分?这种分级观点对计算机设计会产生什么影响?

答:现代计算机系统可分为五个层次,第一级是微程序设计级;第二级是一般机器级;第三级是操作系统级;第四级是汇编语言级;第五级是高级语言级。其中前二级是硬件系统、后两级是软件系统对硬件系统的功能扩展,第三级是可以说是软件与硬件的一个交界面。这种分级不是绝对的,也不是惟一的,比如随着大规模集成电路和固件的发展,硬件的功能在不断往上层延伸。而且,不同的硬件结构,其层次也不同,如硬布线控制器的计算机,就没有微程序级。

12.为什么软件能够转化为硬件?硬件能够转化为软件?实现这种转化的媒介是什么? 答:随着大规模集成电路和计算机系统结构的发展,实体硬件机的功能范围不断从一、二级向三、四级扩展,原因有:

(1)容量大、价格低、体积小、可改写的只读存储器提供了软件固化的良好物质基础,固件即固化的软件,从功能上讲是软件,从形态上看又是硬件。

(2)在一片硅单晶芯片上制作复杂的逻辑电路已实际可行,这又为扩大指令功能提供了相应的技术手段,而且成本降低使实用成为可能。因此,传统的软件今后有可能“固化”甚至“硬化”而变成硬件,而在不追求高速处理时为了降低硬件成本,也可以用软件来模拟硬件的功能。

13.“计算机应用”与“应用计算机”在概念上等价吗?用学科角度和计算机系统的层次结构来说明你的观点。 答:计算机应用是一个学科的名词,它包含计算机网络、信息管理、数据库技术、人工智能、计算机辅助设计等多个领域,而应用计算机,是从计算机层次结构的角度来看,不同的应用者,应用的方法和目标是不同的,如CPU的设计者是在微程序级应用计算机,目的是为后面的应用者提供功能强大的指令系统、而操作系统的设计者是在汇编语言级应用计算机,目的是扩展硬件功能,为后面的应用者提供良好的操作环境和手段。

第二章 运算方法和运算器

1.写出下列各数的原码、反码、补码表示(用8位二进制数),其中MSB是最高位(又是符号位),LSB是最高位。如果是小数,小数点在MSB之后;如果是整数,小数点在LSB之后。

(1) -35/64 (2)23/128 (3) –127 (4)用小数表示-1 (5)用整数表示-1 解:(1)-35/64 = -0.100011

原码1.1000110 反码1.0111001 补码1.0111010

(2)23/128= 0.0010111

原码0.0010111 反码0.0010111 补码0.0010111 (3) –127=1111111

原码11111111 反码10000000 补码10000001 (4) 用小数表示-1

补码1.0000000(原码和反码不存在) (5) 用整数表示-1

原码10000001 反码11111110 补码111111111

2. 设[x]补=a0. a 1 a 2 ?a 6 其中ai 取0或1,若要x>-0.5,求a 0,a 1 , a 2 , ? , a6 的取值。

解:[x]补 = a0. a1a2?a6 解法一:

(1) (1) 若a0 = 0, 则x > 0, 也满足x > -0.5

此时a1→a6可任意

(2) (2) 若a0 = 1, 则x <= 0, 要满足x > -0.5, 需a1 = 1

即a0 = 1, a1 = 1, a2→a6有一个不为0

解法二:

-0.5 = -0.1(2) = -0.100000 = 1, 100000

(1) (1) 若x >= 0, 则a0 = 0, a1→a6任意即可

[x]补 = x = a0. a1a2?a6

(2) (2) 若x < 0, 则x > -0.5

只需-x < 0.5, -x > 0

[-x]补 = -x, [0.5]补 = 01000000 即[-x]补 < 01000000

a0*a1*a2?a6?1?01000000 a0*a1*a2?a6?00111111 a0a1a2?a6?11000000

即a0a1 = 11, a2→a6不全为0或至少有一个为1(但不是“其余取0”)

3.有一个字长为32位的浮点数,符号位1位,阶码8位,用移码表示,尾数23位,用补码表示;基数为2。请写出:(1)最大数的二进制表示;(2)最小数的二进制表示;(3)规格化数所能表示数的范围。

解:用IEEE754格式(E的取值范围:1~254,留出全0和全1分别表示0和无穷大) 31 30 23 22 20 0 S E M (1) 最大数的二进制表示: 0 11111110 11111111111111111111111即 2127(2-2-23) (2) 最小数的二进制表示: 1 11111110 11111111111111111111111即 - 2127(2-2-23) (3) 规格化数所能表示数的范围:

最小的正数:0 00000001 00000000000000000000001 即2-126(1+2-23) 绝对最小的负数:

1 00000001 00000000000000000000001 即-2-126(1+2-23) 所以范围是:

4.将下列十进制数表示成IEEE754标准的32位浮点规格化数。 (1) 27/64 (2) – 27/64 解:27/64=0.011011=1.1011*2-2

(1) 0 01111101 10110000000000000000000=3ED80000H (2) 1 01111101 10110000000000000000000=BEC80000H

5.已知x和y,用变形补码计算x+y,同时指出结果是否溢出。 (1)x=0.11011 y=0.00011 (2)x=0.11011 y=-0.10101 (3)x=-0.10110 y=-0.00001 解:

6.已知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 解:

7.用原码阵列乘法器、补码阵列乘法器分别计算x*y。 (1)x = 0.11011 y = - 0.11111 (2)x = -0.11111 y = - 0.11011 解:(1) A.原码阵列

x = 0.11011, y = -0.11111 符号位: x0⊕y0 = 0⊕1 = 1 [x]原 = 11011, [y]原 = 11111 [x*y]原 = 1, 11 0100 0101