计算机组成原理辅导与实验.docx
- 文档编号:8443305
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:113
- 大小:406.86KB
计算机组成原理辅导与实验.docx
《计算机组成原理辅导与实验.docx》由会员分享,可在线阅读,更多相关《计算机组成原理辅导与实验.docx(113页珍藏版)》请在冰豆网上搜索。
计算机组成原理辅导与实验
1.1典型例题精选
选择题
例1.1最早提出“存储程序”概念的是:
。
A.BabbageB.V·NeumannC.PascalD.Bell
分析:
目前大多数计算机都是根据冯·诺依曼计算机体系结构的思想来设计的,其主要特点是二进制和存储程序。
答案:
B.V·Neumann
例1.2计算机的算术逻辑单元、控制单元及存储器合称为。
A.CPUB.ALUC.主机D.微处理器
分析:
一般将计算机中的控制器和存储器合称为主机,控制器包括有算术逻辑单元和控制单元。
答案:
C.主机
例1.3完整的计算机系统应包括。
A.运算器、控制器、存储器B.外部设备和主机
C.主机和实用程序D.软硬件系统
分析:
完整的计算机系统由计算机硬件和计算机软件组成。
答案:
D.软硬件系统
例1.4用于科学计算的计算机中,标志系统性能的主要参数是___。
A.主时钟频率
B.主存容量
C.MFLOPS
D.MIPS
分析:
A和B越大有利于提高性能,但是并不是标志性能的主要参数,不同频率或者主存容量的计算机如果运行不同的程序,得到的性能并不一定是高频率或大主存的就一定好。
MFLOPS是每秒执行百万条浮点指令条数(Million Float Instruction Per Second),是用来描述计算机浮点性能的,而用于科学计算的计算机主要就是看重浮点的性能,故选C。
MIPS是每秒执行百万条指令条数(Million Instruction Per Second),是用来描述一般的计算机系统性能的,并不同于专用于科学计算的评价标准。
答案:
C.MFLOPS
填空题
例1.51812年,计算机之父首先提出了整个计算机过程自动化的概念,设计了第一台通用自动时序控制机械式计算机。
分析:
1812年,Babbage首先提出了整个计算机过程自动化的概念,并应用此概念设计制作了第一台通用自动时序控制机械式计算机,被称为计算机之父。
答案:
Babbage
例1.6年美国研制成功世界上第一台电子数字计算机。
分析:
第一台电子数字计算机是1946年在美国研制成功,命名为ENIAC。
答案:
1946年,ENIAC
例1.7按用途分,数字计算机可分为和两类。
根据体积、功耗、规模和价格因素,又可分为、、、、和。
分析:
按用途分,数字计算机可分为通用计算机和专用计算机两类。
按体积、功耗、规模和价格因素分,可分为巨型机,大型机,中型机,小型机,微型机,单片机。
答案:
通用计算机,专用计算机,巨型机,大型机,中型机,小型机,微型机,单片机
例1.8存储器可分为主存和。
程序必须存储在内,CPU才能执行其中的指令。
分析:
存储器可分为主存和辅存,CPU运行时,是从主存中逐条取出程序指令,顺序执行。
答案:
辅存,主存
简答题
例1.9衡量计算机的性能指标主要有哪些(答主要三项指标)?
并说明为什么?
分析:
衡量计算机的性能指标有很多,最基本的就是反映计算机运算性能的指标,所以本题答案不唯一。
答案:
衡量计算机性能的指标主要有:
运算速度,存储容量和通讯带宽。
运算速度是反映CPU性能,也是反映计算机运算能力的主要指标之一。
存储容量反映出计算机可以处理的数据量空间的大小。
带宽反映出计算机处理信息的通讯能力。
例1.10什么是存储程序原理?
分析:
存储程序控制是冯·诺依曼结构的核心,现代计算机几乎都使用这种结构。
答案:
存储程序原理的基本思想是:
计算机要自动完成解题任务。
必须将事先设计好、用以描述计算机解题过程的程序如同数据一样,采用二进制形式存储在机器中,计算机在工作时自动高速地从机器中逐条取出指令加以执行。
例1.11存储程序计算机硬件包含哪几部分?
分析:
硬件是组成电子计算机的所有电子器件和机电装置的总称。
硬件是构成计算机的物质基础,是计算机系统的核心。
现代电子计算机均遵照存储程序计算机体系结构。
根据存储程序计算机的五大功能,计算机硬件系统均由运算器、控制器、存储器、输入设备、输出设备以及将它们联接为有机整体的总线构成。
答案:
存储程序计算机硬件包含运算器、控制器、存储器、输入设备、输出设备五大部分以及联接这五大部分的总线。
1.2练习题
一、选择题
1.冯·诺依曼(VonNeumann)机工作方式的基本特点是。
A.指令流单数据流B.按地址访问并顺序执行指令
C.堆栈操作D.存储器按内容选择地址
2.下列描述中是正确的。
A.控制器能够识别、解释和执行所有的指令及存储结果
B.计算机主要由输入输出单元、控制器、存储器和算术逻辑单元构成
C.所有的数据运算都在控制器中完成
D.以上三者都正确
3.计算机系统中的存储器系统是指。
A.RAM存储器;B.ROM存储器;
C.主存储器;D.主存储器和外存储器。
4.计算机科技文献中,英文缩写CAI代表。
A.计算机辅助制造B.计算机辅助教学
C.计算机辅助设计D.计算机辅助管理
5.能够被计算机硬件直接识别的语言是。
A.汇编语言B.高级语言C.机器语言D.应用语言
6.计算机软件分为两大类,他们是。
A.操作系统与应用软件B.操作系统与系统软件
C.操作系统与CAD软件D.系统软件与应用软件
7.完整的计算机系统是由组成的。
A.主机与外设B.CPU与存储
C.ALU与控制器D.硬件系统与软件系统
8.高级语言源程序不能直接在计算机上运行,需要有相应的语言处理程序翻译成程序后才能运行。
A.C语言B.汇编语言C.机器语言D.宏汇编语言
9.当前设计高性能计算机的重要技术途径是___。
A.提高CPU主频B.扩大主存容量
C.采用非冯·诺依曼结构D.采用并行处理技术
10.下列体系结构中,最适合多个任务并行执行的体系结构是___。
A.流水线向量机结构B.堆栈处理机结构
C.共享存储多处理机结构D.分布存储多计算机结构
二、填空题
1.电子计算机从诞生至今,按其工艺和器件特点,大致经历了四代。
第一代从A年开始,采用B;第二代从C年开始,采用D;第三代从E年开始,采用F;第四代从G年开始,采用H。
2.计算机的硬件是指A,软件是指B。
3.计算机将部分软件存储在只读存储器中,称之为A。
4.将许多电子元件集成在一块芯片上称为A。
5.系统软件是A,应用软件是B,操作系统是C。
6.数据库是A,数据库管理系统是B。
7.计算机系统结构的发展和演变看,早期的计算机是以A为中心的系统结构,而近代的计算机是以B为中心的系统结构。
8.在下列常用术语后面,写出相应的中文名称:
VLSI__A___MPP___B___RISC____C__DMA___D__
9.在由n台计算机构成的并行计算机中,其运行程序的加速比一般都小于n,其主要原因是___A__和__B____。
10.在计算机系统当中,根据应用条件和硬件资源的不同,数据传输方式可以采用A___传送、B__传送和C___传送三种方式。
11.为了使计算机能够直接处理十进制形式的数据,采用A___形式和B___形式两种表示形式。
前者主要用在C___计算的应用领域。
12.字符信息是_A__数据,属于处理B___领域的问题。
国际上采用的字符系统是七单位的C___码。
三、问答题
1.冯·诺依曼计算机体系的基本思想是什么?
按此思想设计的计算机硬件系统应由哪些部件组成?
2.计算机的系统软件和应用软件的作用是什么?
3.试说明冯·诺依曼计算机结构的特点。
4.计算机一般有哪些分类方法?
5.试说明计算机的层次结构。
6.简述计算机的工作特点。
1.3练习题题解
一、选择题
1.B2.B3.D4.B5.C6.A7.D8.C9.D10.D
二、填空题
1.A.1946B.电子管、声汞延迟线、磁鼓
C.1955D.分立晶体管、铁淦氧磁芯、磁盘
E.1965F.SSI电路和MSI电路
G.1971H.LSI电路和VLSI电路、半导体存储器
2.A.计算机中的电子线路和物理装置
B.描述解决问题的方法、思想和过程的程序和数据
3.A.固件
4.A.集成电路
5.A.用于实现计算机系统的管理、调度、监视和服务等功能的程序,其目的是方便用户,提高计算机使用效率,扩充系统的功能
B.用户为解决某种应用问题而编制的一些程序
C.为提高计算机利用率,方便用户使用计算机以及提高计算机响应时间而配备的一种软件
6.A.计算机存储设备上存放的相互关联的数据的集合
B.操作和管理数据库的一种软件
7.A.运算器
B.主存储器
8.A.Very Large Scale Integration 超大规模集成电路
B.Massively Parallel Processing大规模并行处理机
C.Reduced Instruction Set Computing简化指令系统计算机
D.Direct Memory Access直接存储器访问
9.A.程序中有不能并行的串行计算部分
B.存在通信开销
10.A.并行B.串行C.复用
11.A.字符串B.压缩的十进制数C.非数值
12.A.符号B.非数值C.ASCII
三、问答题
1.根据冯·诺依曼计算机体系结构来设计的计算机具有共同的基本配置,即具有五大部件:
输入设备、存储器(主存储器)、运算器、控制器和输出设备。
运算器与控制器合称为中央处理器(CPU)。
CPU和存储器通常组装在一个主板上,合称为主机。
输入设备和输出设备统称输入/输出设备,有时也称为外部设备或外围设备。
2.系统软件用于实现计算机系统的管理、调度、监视和服务等功能,其目的是方便用户,提高计算机使用效率,扩充系统的功能。
通常将系统软件分为以下六类:
操作系统、语言处理程序、标准库程序、服务性程序、数据库管理系统和计算机网络软件。
应用软件是用户为解决某种应用问题而编制的程序,如科学计算程序、自动控制程序、工程设计程序、数据处理程序、情报检索程序等。
随着计算机的广泛应用,应用软件的种类及数量将越来越多、越来越庞大。
3.近年来,计算机系统的结构和制造技术发生了极大的变化。
但是,就计算机最基本的原理而言,大都沿用冯·诺依曼结构。
冯·诺依曼结构的主要特点是主要特点是二进制和存储程序原理。
4.按信息的表示形式和处理方式分类,可分为数字计算机、模拟计算机和混合计算机。
按用途分类,可分为通用计算机和专用计算机。
按规模分类,可分为巨型机、大型机、中型机、小型机、微型机和单片机等。
按使用方式分类,可分为工作站和服务器。
5.现代计算机系统可分为五个层次级别:
第一级是微程序设计级。
这是一个实在的硬件级,它由机器硬件直接执行微指令。
第二级是一般机器级,也称为机器语言级。
由微程序解释机器指令系统。
属硬件级。
第三级是操作系统级,它由操作系统程序实现。
这一级也称为混合级。
第四级是汇编语言级。
这一级由汇编程序支持和执行。
第五级是高级语言级。
这是面向用户的,这一级由各种高级语言编译程序支持。
层次结构的特点是上层是下层功能的扩展,下层是上层的基础。
另外,站在不同的层次观察计算机系统,会得到不同的概念。
层次的划分不是绝对的。
机器指令系统级与操作系统级的界面,又称硬、软件交界面,常常是分不清的,它随着软件硬化和硬件软化而动态变化。
操作系统和其他系统软件的界面,也不是很清楚的,例如,数据库软件也部分地起到了操作系统的作用。
此外,某些常用的带有应用性质的程序,既可以划归为应用程序层,也可以划归为系统软件层。
6.计算机的工作特点为:
运算速度快、运算精度高、记忆功能强、通用性广、自动运算。
1.4典型例题精选
例2.1某机器字长16位,采用两位比较法进行补码乘法运算,此时并行加法器应该是位加法器,应该进行次相加移位操作。
分析:
采用两位比较法进行补码乘法运算,设被乘数为[X]补=X0.X1X2…Xn,乘数为[Y]补=Y0.Y1Y2…Yn,两者的乘积为[Z]补=Z0.Z1Z2…Zn,部分积与被乘数必须采用两位符号位才能保证运算正确,注意,由于乘数只用一位符号位,Booth乘法只需作n+1步乘法。
解:
正确答案为:
17,16.
例2.2多项选择:
在下面每小题所列出的若干答案中,选取所有的正确答案(可能没有,也可以有一个或多个)。
补码加法规则如下:
A.所有的操作数都用补码表示,结果也用补码表示。
B.若两数同号做加法,异号则做减法。
C.符号位和操作数一样参与运算。
D.结果的符号为1,表示溢出。
分析:
补码加(减)法运算规则可归纳如下:
参与运算的操作数用补码表示;符号位采用两位,即用变形补码表示;符号位作为数的一部分一起参与运算;运算结果以补码表示,若两符号位相同,结果正常,若符号位为01,表示正溢出,若符号位为10,表示负溢出。
解:
正确答案为:
A,C
例2.3单选:
某浮点机,采用规格化浮点数表示,阶码用移码表示(最高位代表符号位),尾数用原码表示。
下列哪个数的表示不是规格化浮点数。
A.阶码:
1111111尾数:
1.1000……00
B.阶码:
0011111尾数:
1.0111……01
C.阶码:
1000001尾数:
0.1111……01
D.阶码:
0111111尾数:
0.1000……10
分析:
因为规格化的浮点数,尾数有三种形式:
00.1xx……x(原码、补码、反码都是正数的形式)
11.0xx……x(补码、反码都是负数的形式)
11.1xx……x(原码是负数的形式)
选择项B不符合规格化的形式。
解:
正确答案是:
B。
例2.4设32位字长的浮点数,其中阶符1位,阶码7位,数符1位,尾23位。
分别写出机器数采用原码和补码表示时,所对应的最接近0的十进制负数。
分析:
计算机中的数据表示是二进制形式,本题中使用的32位浮点数据表示,阶码共8位,尾数共24位。
求最接近0的十进制负数的浮点表示就是数据表示中最大的负数,即绝对值最小的负数。
此时,该数的阶码为负,且绝对值最大;该数的尾数为负,且绝对值最小。
注意尾数不能为0。
由于原码可以表示正0与负0,当机器采用n位原码数据表示时,定点小数的表示范围为:
-(1-21–n)~(1-21–n);定点整数的表示范围为:
-(2n–1-1)~(2n–1-1)。
而补码表示0的形式是唯一的,其负数表示的数据比原码表示的数据多一个。
当机器采用n位补码数据表示时,定点小数的表示范围为:
-1~(1-21–n);定点整数的表示范围为:
(-2n–1)~(2n–1-1)。
采用原码数据表示时,最接近0的负数的阶码为-(27-1)=-127,尾数为-2–23。
采用补码数据表示时,最接近0的负数的阶码为-128,尾数为-2-23。
最后需要将该数以科学计数法表示出来即可。
解:
最接近0的十进制负数的浮点表示就是数据表示中最大的负数,即绝对值最小的负数。
阶码为8位(含1位符号位),尾数为24位(含1位符号位)。
采用原码数据表示时,阶码为-127,尾数为-2–23。
该数为-2–23×2–127。
采用补码数据表示时,阶码为-128,尾数为-2–23。
该数为-2–23×2–128。
例2.5用32位表示一个数,阶码部分占8位(含一位符号位),尾数部分占24位(含一位符号位)。
设x1=-256.5,x2=127/256,试写出x1和x2的补码浮点数表示格式。
解:
(1)x1=-256.5=-100000000.12=-29×0.1000000001
阶码的补码为[+9]补=00001001
尾数1.01111111110000000000000(规格化补码)
浮点表示的格式为00001001,1.01111111110000000000000
用十六进制表示的格式为09BFE00016
(2)x2=127/256=(1111111)2×2-8=2-1×0.1111111
阶码的补码为(-1)补=11111111
尾数0.11111110000000000000000(规格化补码)
浮点表示的格式为11111111,0.11111110000000000000000
用十六进制表示的格式为(FF7F0000)16
例2.6某机字长32位,浮点表示时,指数部分(即阶码)占8位(含一位符号位),尾数部分占24位(含一位符号位),问
(2)带符号定点小数的最大表示范围是多少?
(3)带符号定点整数的最大表示范围是多少?
(4)浮点表示时,最大正数是多少?
(5)浮点表示时,最大负数是多少?
(6)浮点表示时,最小的规格化正数是多少?
分析:
采用补码表示时,可表示的数据范围最大。
因此本题可用补码来求解。
带符号的定点小数通常就是浮点数。
浮点数据表示阶码占8位,尾数占24位,各包含一位符号位。
此时阶码的表示范围为:
-128~127;尾数的表示范围为:
-1~1-2–23。
带符号的定点整数其符号位1位,其余位均用来表示数据。
此时的表示范围为:
-231~231-1。
浮点表示时,最大正数为阶码最大,尾数最大的正数。
最大负数为阶码最小,尾数最小的负数。
采用规格化数据表示时要注意尾数必须保证大于等于0.5,小于1。
因此,浮点表示时,最小的规格化正数阶码最小,尾数最小为0.5。
解:
采用补码进行数据表示的范围最大。
整数表示时符号位1位,数据位31位。
浮点表示时,阶码占8位,尾数占24位,各包含一位符号位。
因此:
(1)带符号定点小数的最大表示范围为:
-1×2127~(1-2-23)×2127。
(2)带符号定点整数的最大表示范围为:
-231~231-1。
(3)浮点表示时,最大正数为:
(1-2-23)×2127。
(4)浮点表示时,最大负数为:
-2-23×2-128。
(5)浮点表示时,最小的规格化正数为:
0.5×2-128。
例2.7已知浮点数运算的中间结果如下:
阶码1 010 尾数1 0011101
其中,阶码是4位补码。
问
(1)如果尾数是8位原码,求其规格化的浮点数的形式。
(2)如果尾数是8位补码,求其规格化的浮点数的形式。
解:
(1)尾数为8位原码,最高位M-1=0,不是规格化表示形式。
所以尾数左移2位,尾数低位补0,阶码减2,由1010变为1000,变换后的规格化浮点数的形式是:
100011110100
(2)尾数为8位补码,尾数的最高位与其符号位正好相反,这表明已经是规格化浮点数的形式。
例2.8设阶码8位(包括一位符号位),用移码表示,尾数为24位(包括一位符号位),用规格化补码表示,则它所能表示的最大正数的阶码为A,尾数为B;绝对值最小的负数的阶码为C,尾数为D。
分析:
题目的关键是搞懂阶码是定点整数的移码表示,而尾数是定点小数的补码表示,其中的补码和移码的表示法一定要非常清楚。
阶码和补码在形式上的唯一区别就是在表示同一个数时符号刚好相反。
解:
最大正数阶码:
11111111(最左符号位,要最大当然阶码要大),尾数当然也要最大,为0111 11111 11111 11111。
绝对值最小的负数即是最大的负数,所以要阶码最达到负数的最小,绝对值的最大(即远离数轴原点的最左端),为00000000,而尾数应该达到负数的最大(即最靠近数轴原点的左端),为1011 11111 11111 11111(这里注意其中的0是因为题目规定要用规格化数表示,这点很重要,否则就是1111 11111 11111 11111)
例2.9试证明[x]补十[y]补=[x十y]补(mod2)
分析:
由于定点整数和定点小数的补码公式不同.因此,对于题中要求的补码加法公式的证明应该区分是定点小数情况还是定点整数情况。
这里证明补码加法公式用于定点小数的情况(mod2)。
因为是定点小数加法,所以有|xI<1,|y|<1,且|x+yI<1。
证明所需要的理论基础是定点小数补码的定义,即
表2.6补码加法公式证明的几种情况
X
Y
X︱Y
1
=0
=0
=0
2
>0
>0
>0
3
>0
<0
>0或<0
4
<0
>0
>0或<0
5
<0
<0
<0
由于补码的定义对于正数和负数是不同的,因此,证明该公式时亦应区分不同的情况进行,见表2.6。
证明:
设x,y为定点小数,且x十y亦为定点小数,故|xI<1,|y|<1,且|x+yI<1。
(4)当x<0,y>0时,证明同(3)。
讨论:
该题证明是针对定点小数进行的,补码加法公式对定点整数也同样适用。
补码公式的证明题目类型有很多种,一定要注意弄清证明的条件(如该例题中x,y为定点小数.即有|xI<1,lyI<1,lx十y|<1,以及证明可用的理论基础。
补码定义和其他补码公式均可用作证明的理论基础。
例2.10试证明[–y]补=–[y]补。
证明:
方法一由补码加法公式得
故[–y]补=–[y]补
方法二利用补码加法公式,[0]补=0,得
[y]补+[–y]补=[y+(-y)]补=[y-y]补=[0]补=0
即[–y]补=–[y]补
讨论:
[–y]补=–[y]补是一个非常重要的公式。
对于定点整数和定点小数均适用,[–y]补的含义是将[y]补的各位(包括符号位)全部求反,末位加“1”。
例2.11已知x=一0.0101B,y=一0.0111B,试用补码运算求x十y,x-y的值。
解:
[x]补=1.1011[-y]补=0.0111[y]补=-[-y]补=1.1001
[x]补=1.1011[x]补=1.1011
+[y]补=1.1001+[-y]补=0.0111
[x+y]补=11.0100[x-y]补=10.0010
已超出模值,丢掉
故x+y=-0.1Bx–y=0.001B
讨论:
在做加法运算时,先求出两个加数的补码,利用公式[x]补十[y]补=[x十y]补完成加法运算。
在做减法运算时,先求出被减数和减数相反数的补码,利用公式[x]补十[–y]补=[x–y]补将减法转换成加法来完成。
补码加法运算,符号位相加产生的进位需丢掉,产生的和即为结果的符号位。
若x>o,则[x]原=[x]反=[x]补。
若x<o,则求[x]补常用的方法有:
先求出[x]原,[x]原符号位不变,数值位各位取反即得[x]反;[x]反末位加1即为[x]补。
先求[-x]补,然后利用公式[-x]补=一[x]补,求出[x
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理 辅导 实验