计算机组成原理唐朔飞高分笔记

计算机组成原理唐朔飞高分笔记
计算机组成原理唐朔飞高分笔记

试卷内容结构数据结构 45分计算机组成原理 45分操作系统 35分计算机网络 25分

试卷题型结构单项选择题 80分(40小题,每小题2分) 综合应用题 70分

计算机体系结构(Computer Architecture)主要研究硬件和软件功能的划分,确定硬件和软件的界面,哪部分功能由硬件系统来完成,哪部分功能由软件系统来完成。

计算机组成原理(Computer Organization)是依据计算机体系结构,在确定且分配了硬件子系统的概念结构和功能特性的基础上,设计计算机各部件的具体组成,以及它们之间的连接关系,实现机器指令级的各种功能和特性,这点上说计算机组成原理是计算机体系结构的逻辑实现。

计算机实现(Computer Implementation)是计算机组成的物理实现,包括中央处理器、主存储器、输入输出接口和设备的物理结构,所选用的半导体器件的集成度和速度,器件、模块、插件、底板的划分,电源、冷却、装配等技术,生产工艺和系统调试等各种问题。总之,就是将完成逻辑设计的计算机组成方案转换成真实的计算机,也就是将满足设计、运行、价格等各项要求的计算机系统真正地制作并调试出来。

计算机组成原理

【考查目标】

1. 理解单处理器计算机系统中各部件的内部工作原理,组成结构以及相互连接方式,具有完整的计算机系统的整机概念.

2. 理解计算机系统层次化结构概念,熟悉硬件与软件间的界面,掌握指令集体系结构的基本知识和基本实现方法

3. 能够运用计算机组成的基本原理和基本方法,对有关计算机硬件系统中的理论和实际问题进行计算,分析,并能对一些基本部件进行简单设计.

一, 计算机系统概述

(一) 计算机发展历程

第一台电子计算机ENIAC诞生于1946年美国宾夕法尼亚大学.ENIAC用了18000电子管,1500继电器,重30吨,占地170m2,耗电140kw,每秒计算5000次加法.冯?诺依曼(VanNeumann)首次提出存储程序概念,将数据和程序一起放在存储器,使编程更加方便.50年来,虽然对冯?诺依曼机进行很多改革,但结构变化不大,仍称冯?诺依曼机.

EDVAC(Electronic Discrete Variable Automatic Computer)电子离散变量计算机

组成原理是讲硬件结构的系统结构是讲结构设计的

摩尔定律微芯片上的集成管数目每3年翻两番.处理器的处理速度每18个月增长一倍.

每代芯片的成本大约为前一代芯片成本的两倍

新摩尔定律全球入网量每6个月翻一番.

数学家冯·诺依曼(von Neumann)在研究EDVAC机时提出了“储存程序”的概念.以此为基础的各类计算机通称为冯·诺依曼机.它有如下特点:

①计算机由运算器,控制器,存储器,输入和输出五部分组成

②指令和数据以同等的地位存放于存储器内,并可按地址寻访

③指令和数据均用二进制数表示

④指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置

⑤指令在存储器内按顺序存放

⑥机器以运算器为中心,输入输出设备与存储器间的数据传送通过运算器完成

图中各部件的功能

·运算器用来完成算术运算和逻辑运算并将的中间结

果暂存在运算器内

·存储器用来存放数据和程序

·控制器用来控制,指挥程序和数据的输入,运行以及

处理运行结果

·输入设备用来将人们熟悉的信息转换为机器识别的

信息

·输出设备将机器运算结果转为人熟悉的信息形式

运算器最少包括3个寄存器(现代计算机内部往往设有通用寄存器)和一个算术逻辑单元(ALU Arithmetic Logic Unit).其中ACC(Accumulator)为累加器,MQ(Multiplier-Quotient Register)为乘商寄存器,X为操作数寄存器,这3个寄存器在完成不同运算时,说存放的操作数类别也各不相同.

计算机的主要硬件指标

(4.a) 主机完成一条指令的过程——以取数指令为例

(4.b) 主机完成一条指令的过程——以存数指令为例

(二) 计算机系统层次结构

1. 计算机硬件的基本组成

计算机硬件主要指计算机的实体部分,通常有运算器,控制器,存储器,输入和输出五部分.

CPU是指将运算器和控制器集成到一个电路芯片中.

2. 计算机软件的分类

计算机软件按照面向对象的不同可分两类:

系统软件:用于管理整个计算机系统,合理分配系统资源,确保计算机正常高效地运行,这类软件面向系统.(包括:标准程序库,语言处理程序,OS,服务程序,数据库管理系统,网络软件)

应用软件:是面向用户根据用户的特殊要求编制的应用程序,这类软件通常实现用户的某类要求.

3. 计算机的工作过程

(1)计算机的工作过程就是执行指令的过程

指令由操作码和操作数组成:

操作码指明本指令完成的操作

操作码地址码

地址码指明本指令的操作对象

.

(3)指令的读取为了纪录程序的执行过程,需要一个记录读取指令地址的寄存器,称为指令地址寄存器,或者程序计数器.指令的读取就可以根据程序计数器所指出的指令地址来决定读取的指令,由于指令通常按照地址增加的顺序存放,故此,每次读取一条指令之后,程序计数器加一就为读取下一条指令做好准备.

(4)执行指令的过程在控制器的控制下,完成以下三个阶段任务:

1)取指令阶段按照程序计数器取出指令,程序计数器加一

2)指令译码阶段分析操作码,决定操作内容,并准备操作数

3)指令执行阶段执行操作码所指定内容

(三) 计算机性能指标

1. 吞吐量,响应时间

(1) 吞吐量:单位时间内的数据输出数量.

(2) 响应时间:从事件开始到事件结束的时间,也称执行时间.

2. CPU时钟周期,主频,CPI,CPU执行时间

(1) CPU时钟周期:机器主频的倒数,T C

(2)主频:CPU工作主时钟的频率,机器主频Rc

(3)CPI:执行一条指令所需要的平均时钟周期

(4)CPU执行时间:

T CPU=In×CPI×T C

In执行程序中指令的总数

CPI执行每条指令所需的平均时钟周期数

T C时钟周期时间的长度

3. MIPS,MFLOPS

(1)MIPS:(Million Instructions Per Second)

Te:执行该程序的总时间=指令条数/(MIPS×错误!未找到引用源。)

In:执行该程序的总指令数

Rc:时钟周期Tc的到数

MIPS只适合评价标量机,不适合评价向量机.标量机执行一条指令,得到一个运行结果.而向量机执行一条指令,可以得到多个运算结果.

(2) MFLOPS: (Million Floating Point Operations Per Second)

MFLOPS=Ifn/(Te×错误!未找到引用源。)

Ifn:程序中浮点数的运算次数

MFLOPS测量单位比较适合于衡量向量机的性能.一般而言,同一程序运行在不同的计算机上时往往会执行不同数量的指令数,但所执行的浮点数个数常常是相同的.

特点:

1.MFLOPS取决于机器和程序两方面,不能反映整体情况,只能反映浮点运算情况

2.同一机器的浮点运算具有一定的同类可比性,而非同类浮点操作仍无可比性

当前微处理器的发展重点

①进一步提高复杂度来提高处理器性能

②通过线程进程级的并发性提高处理器性能

③将存储器集成到处理器芯片来提高处理器性能

④发展嵌入式处理器

软件开发有以下几个特点

1)开发周期长

2)制作成本昂贵

3)检测软件产品质量的特殊性

计算机的展望

一、计算机具有类似人脑的一些超级智能功能

要求计算机的速度达1015/秒

二、芯片集成度的提高受以下三方面的限制

?芯片集成度受物理极限的制约

?按几何级数递增的制作成本

?芯片的功耗、散热、线延迟

计算机辅助设计CAD 计算机辅助制造CAM

计算机辅助工艺规划 Computer Aided Process Planning CAPP

计算机辅助工程 Computer Aided Engineering CAE

计算机辅助教学 Computer Assisted Instruction CAI

科学计算和数据处理

工业控制和实时控制

网络技术应用

虚拟现实

办公自动化和管理信息系统 Computer Aided Design

CAD,CAM,CIMS Computer Aided Manufacturing

多媒体技术 Computer Integrated Manufacturing System

人工智能,模式识别,文字/语音识别,语言翻译,专家系统,机器人…

二, 数据的表示和运算

(一) 数制与编码

1. 进位计数制及其相互转换

1)进位计数制

进位计数制是指按照进位制的方法表示数,不同的数制均涉及两个基本概念:基数和权.

基数:进位计数制中所拥有数字的个数.

权:每位数字的值等于数字乘以所在位数的相关常数,这个常数就是权.

任意一个R 进制数X,设整数部分为n 位,小数部分为m 位,则X 可表示为:

X =a n-1r n-1 + a n-2r n-2 + ┅ + a 0r 0 + a -1r -1 + a -2r -2 + ┅ + a -m r -m

(X)r = ∑--=m n i i i r K 1

2)不同数制间的数据转换

(1)二,八,十六进制数转换成十进制数

利用上面讲到的公式: (N)2=∑Di ?2i ,(N)8=∑Di ?8i , (N)16=∑Di ?16i ,进行计算.

(2)十进制数转换成二进制数

通常要对一个数的整数部分和小数部分分别进行处理,各自得出结果后再合并.

◆ 对整数部分,一般采用除2取余数法,其规则如下:

将十进制数除以2,所得余数(0或1)即为对应二进制数最低位的值.然后对上次所得商除以2,所得余数即为二进制数次低位的值,如此进行下去,直到商等于0为止,最后得的余数是所求二进制数最高位的值.

◆ 对小数部分,一般用乘2取整数法,其规则如下:

将十进制数乘以2,所得乘积的整数部分即为对应二进制小数最高位的值,然后对所余数的小数部分部分乘以2,所得乘积的整数部分为次高位的值,如此进行下去,直到乘积的小数部分为0,或结果已满足所需精度要求为止.

(3)二进制数,八进制数和十六进制数之间的转换

八进制数和十六进制数是从二进制数演变而来的:

由3位二进制数组成1位八进制数;

由4位二进制数组成1位十六进制数.

对一个兼有整数和小数部分的数以小数点为界,小数点前后的数分别分组进行处理,不足的位数用0补足. 对整数部分将0补在数的左侧,对小数部分将0补在数的右侧.这样数值不会发生差错.

2. 真值和机器数

真值:数据的数值通常以正(+)负(-)号后跟绝对值来表示,称之为“真值”.

机器数:在计算机中正负号也需要数字化,一般用0表示正号,1表示负号.把符号数字化的数成为机器数.

3. BCD 码(Binary Coded Decimal 以二进制编码的十进制码)

在计算机中采用4位二进制码对每个十进制数位进行编码.4位二进制码有16种不同的组合,从中选出10种来表示十进制数位的0~9,用0000,0001,…,1001分别表示0,1,…,9,每个数位内部满足二进制规则,而数位之间满足十进制规则,故称这种编码为“以二进制编码的十进制(binary coded decima1,简称BCD)码”.

在计算机内部实现BCD 码算术运算,要对运算结果进行修正,对加法运算的修正规则是:

如果两个一位BCD 码相加之和小于或等于(1001)2,即(9)10,不需要修正;

如相加之和大于或等于(1010)2,或者产生进位,要进行加6修正,如果有进位,要向高位进位.

4. 字符与字符串

在计算机中要对字符进行识别和处理,必须通过编码的方法,按照一定的规则将字符用一组二进制数编码表示.字符的编码方式有多种,常见的编码有ASCII码,EBCDIC码等.

1)ASCII码(American Standard Code for Information Interchange 美国信息交换标准码)

ASCII码用7位二进制表示一个字符,总共128个字符元素,包括10个十进制数字(0-9),52个英文字母(A-Z 和a-z),34专用符号和32控制符号.

2)EBCDIC码为Extended Binary Coded Decimal Interchange Code的简称,它采用8位来表示一个字符.

3)字符串的存放

向量存储法:字符串存储时,字符串中的所有元素在物理上是邻接的.

串表存储法:字符串的每个字符代码后面设置一个链接字,用于指出下一个字符的存储单元的地址.

5. 校验码Check Digit

数据校验码是一种常用的带有发现某些错误或自动改错能力的数据编码方法.其实现原理,是加进一些冗余码,使合法数据编码出现某些错误时,就成为非法编码.

这样,可以通过检测编码的合法性来达到发现错误的目的.合理地安排非法编码数量和编码规则,可以提高发现错误的能力,或达到自动改正错误的目的.

码距:码距根据任意两个合法码之间至少有几个二进制位不相同而确定的,仅有一位不同,称其码距为1. 1)奇偶校验码(Parity Bit)WIKI

(开销最小,能发现数据代码中一位出错情况的编码,常用于存储器读写检查或ASCII字符或其它类型的信息传输的检查)P216

它的实现原理,是使码距由1增加到2.若编码中有1位二进制数出错了,即由1变成0,或者由0变成1.这样出错的编码就成为非法编码,就可以知道出现了错误.在原有的编码之上再增加一位校验位,原编码n位,形成新的编码为n+1 位.增加的方法有2种:

奇校验:增加位的0或1要保证整个编码中1的个数为奇数个.

偶校验:增加位的0或1要保证整个编码中1的个数为偶数个.

2)海明校验码(Hamming Code)P100

实现原理,在数据中加入几个校验位,并把数据的每一个二进制位分配在几个奇偶校验组中.当某一位出错就会引起有关的几个校验组的值发生变化,这不但可以发现出错,还能指出是哪一位出错,为自动纠错提供了依据.

假设校验位的个数为r,则它能表示2r个信息,用其中的一个信息指出“没有错误”,其余2r-1个信息指出错误发生在哪一位.然而错误也可能发生在校验位,因此只有

k=2r-1-r个信息能用于纠正被传送数据的位数,也就是说要满足关系:

2r错误!未找到引用源。k+r+1

3)CRC校验码(Cyclic Redundancy Check 循环冗余校验)P144

CRC校验码一般是指k位信息之后拼接r位校验码.关键问题是如何从k位信息方便地得到r位校验码,以如何从位k+r信息码判断是否出错.

将带编码的k位有效信息位组表达为多项式:

错误!未找到引用源。

式Ci中为0或1.

若将信息位左移r位,则可表示为多项式M(x).xr.这样就可以空出r位,以便拼接r位校验位.

CRC码是用多项式M(x).xr除以生成多项式G(x)所得的余数作为校验码的.为了得到r位余数,G(x)必须是r+1位.

设所得的余数表达式为R(x),商为Q(x).将余数拼接在信息位组左移r位空出的r位上,就构成了CRC码,这个码的可用多项式表达为:

M(x)·xr+R(x)=[Q(x)·G(x)+R(x)]+R(x)

=[Q(x)·G(x)]+[R(x)+R(x)]

=Q(x)·G(x)

因此,所得CRC码可被G(x)表示的数码除尽.

将收到的CRC码用约定的生成多项式G(x)去除,如果无错,余数应为0,有某一位出错,余数不为0.

(二) 定点数的表示和运算

1. 定点数的表示

1)无符号数的表示

无符号数就是指正整数,机器字长的全部位数均用来表示数值的大小,相当于数的绝对值.

对于字长为n+1位的无符号数的表示范围为: 0错误!未找到引用源。-1

2)带符号数的表示 (真值范围-n-1错误!未找到引用源。n)

带符号数是指在计算机中将数的符号数码化.在计算机中,一般规定二进制的最高位为符号位,最高位为“0”表示该数为正,为“1”表示该数为负.这种在机器中使用符号位也被数码化的数称为机器数.

根据符号位和数值位的编码方法不同,机器数分为原码,补码和反码.

(1)原码表示法

机器数的最高位为符号位,0表示正数,1表示负数,数值跟随其后,并以绝对值形式给出.这是与真值最接近的一种表示形式.

原码的定义:

(2)补码表示法

机器数的最高位为符号位,0表示正数,1表示负数,其定义如下:

(3)反码表示法

机器数的最高位为符号,0表示正数,1表示负数.反码的定义:

·三种机器数的最高位均为符号位.符号位和数值位之间可用“.”(对于小数)或“,”(对于整数)隔开

·当真值为正时,原码,补码和反码的表示形式均相同,即符号位用“0”表示,数值部分与真值部分相同

·当真值为负时,原码,补码和反码的表示形式不同,其它符号位都用“1”表示,而数值部分有这样的关系,即补码是原码的“求反加1”,反码是原码的“每位求反”.

1)定点数的位移运算

左移,绝对值扩大;右移,绝对值缩小.

算术移位规则

算术移位:带符号数移位;

逻辑移位:无符号数移位;

2)原码定点数的加/减运算;

对原码表示的两个操作数进行加减运算时,计算机的实际操作是加还是减,不仅取决指令中的操作码,还取决于两个操作数的符号.而且运算结果的符号判断也较复杂.

例如,加法指令指示做(+A)+(-B)由于一操作数为负,实际操作是做减法(+A)-(+B),结果符号与绝对值大的符号相同.同理,在减法指令中指示做(+A)-(-B)实际操作做加法(+A)+(+B),结果与被减数符号相同.由于原码加减法比较繁琐,相应地需要由复杂的硬件逻辑才能实现,因此在计算机中很少被采用.

3)补码定点数的加/减运算;

(1) 加法

整数 [A]补 + [B]补= [A+B]补(mod 2n+1)

小数 [A]补 + [B]补= [A+B]补(mod 2)

(2) 减法

整数 [A]补 - [B]补= [A+(-B)]补=[A]补+ [-B]补(mod 2n+1)

小数 [A]补 - [B]补= [A+(-B)]补=[A]补 + [-B]补(mod 2)

无需符号判定,连同符号位一起相加,符号位产生的进位自然丢掉

4)定点数的乘/除运算

(1)一位乘法

<1>原码定点一位乘法

两个原码数相乘,其乘积的符号为相乘两数的异或值,数值两数绝对值之积.

设 [X]原=X0 X1 X2 …Xn

[Y]原=Y0 Y1 Y2 …Yn

[X·Y]原=[X]原·[Y]原= (X0⊕Y0)∣(X1 X2 …Xn)·(Y1 Y2 …Yn) 符号∣表示把符号位和数值邻接起来.

有的机器为方便加减法运算,数据以补码形式存放.乘法直接用补码进行,减少转换次数.具体规则如下: [X·Y]补=[X]补(-Y0 + 0. Y1 Y2… Yn )

<3>布斯法

“布斯公式”: 在乘数Yn后添加Yn+1=0.按照Yn+1 ,Yn相邻两位的三种情况,其运算规则如下:

(1) Yn+1 ,Yn =0( Yn+1 Yn =00或11),部分积加0,右移1位;

(2) Yn+1 ,Yn =1( Yn+1 Yn =10) ,部分积加[X]补,右移1位;

(3) Yn+1 ,Yn =-1( Yn+1 Yn =01) ,部分积加[-X]补,右移1位最后一步不移位.

(2)两位乘法

<2>补码两位乘法

当乘数由1位符号位和以n(奇数)位数据位组成时,求部分积的次数为(1+n)/2,而且最后一次的右移操作只右移一位.

若数值位本身为偶数n,可采用下述两种方法之一:

①可在乘数的最后一位补一个0,乘数的数据位就成为奇数,而且其值不变,求部分积的次数为1+(n+l)/2,即n/2+1,最后一次右移操作也只右移一位.

②乘数增加一位符号位,使总位数仍为偶数,此时求部分积的次数为n/2+1,而且最后一次不再执行右移操作.

1>恢复余数法

被除数(余数)减去除数,如果为0或者为正值时,上商为1,不恢复余数;如果结果为负,上商为0,再将除数加到余数中,恢复余数.余数左移1位.

2>加减交替法

当余数为正时,商上1,求下一位商的办法,余数左移一位,再减去除数;当余数为负时,商上0,求下一位商的办法,余数左移一位,再加上除数.

<2>定点补码一位除法(加减交替法)

1〉如果被除数与除数同号,用被除数减去除数;若两数异号,被除数加上除数.如果所得余数与除数同号商上1,否则,商上0,该商为结果的符号位.

2〉求商的数值部分.如果上次商上1,将除数左移一位后减去除数;如果上次商上0,将余数左移一位后加除数.然后判断本次操作后的余数,如果余数与除数同号商上1,如果余数与除数异号商上0.如此重复执行n-1次(设数值部分n位).

3〉商的最后一位一般采用恒置1的办法,并省略了最低+1的操作.此时最大的误差为2-n.

5)溢出概念和判别方法

当运算结果超出机器数所能表示的范围时,称为溢出.显然,两个异号数相加或两个同号数相减,其结果是不会溢出的.仅当两个同号数相加或者两个异号数相减时,才有可能发溢出的情况,一旦溢出,运算结果就不正确了,因此必须将溢出的情况检查出来.判别方法有三种:

1〉当符号相同的两数相加时,如果结果的符号与加数(或被加数)不相同,则为溢出.

2〉当任意符号两数相加时,如果C=Cf,运算结果正确,其中C 为数值最高位的进位,Cf 为符号位的进位.如果C ≠Cf ,则为溢出,所以溢出条件=C ⊕Cf .

3〉采用双符号f s2f s1.正数的双符号位为00,负数的双符号位为11.符号位参与运算,当结果的两个符号位甲和乙不相同时,为溢出.所以溢出条件= fs2⊕fs1 ,或者溢出条件= fs2fs1 + fs2fs1

(三) 浮点数的表示和运算

1. 浮点数的表示

1)浮点数的表示范围;

浮点数是指小数点位置可浮动的数据,通常以下式表示:

N=M×R E

其中,N为浮点数,M(Mantissa)为尾数(可正可负),E(Exponent)为阶码(可正可负),R(Radix)称为“阶的基数(底)”,而且R为一常数,一般为2,8或16.在一台计算机中,所有数据的R都是相同的,于是不需要在每个数据中表示出来.因此,浮点数的机内表示一般采用以下形式:

Ms是尾数的符号位,设置在最高位上.

E为阶码(移码),有n+1位,一般为整数,其中有一位符号位,设置在E的最高位上,用来表正阶或负阶.

M为尾数(原码),有m位,由Ms和M组成一个定点小数.Ms=0,表示正号,Ms=1,表示负.为了保证数据精度属数通常用规格化形式表示:当R=2,且尾数值不为0时,其绝对值大于或等于(0.5)10.对非规格化浮点数,通过将尾数左移或右移,并修改阶码值使之满足规格化要求.

浮点数的表示范围以通式N=M×R E设浮点数阶码的数值位取m位,尾数的数值位取n位

2)IEEE754标准(Institute of Electrical and Electronics Engineers美国电气和电子工程协会)

S 阶码(含阶符) 尾数

数符小数点位置

根据

符号位S阶码尾数总位数

短实数 1 8 23 32

长实数 1 11 52 64

临时实数 1 15 64 80

S,处在最高位.

由于IEEE754标准约定在小数点左部有一位隐含位,从而实际有效位数为24位.这样使得尾数的有效值变为1.M .

例如,最小为x1.0…0,,最大为x1.1…1.规格化表示.故小数点左边的位横为1,可省去.

S(1位) E(8位) M(23位) N(共32位)

符号位0 0 0

符号位0 不等于0 (-1)S·2-126·(0.M) 为非规格化数

符号位1到254之间- (-1)S·2E-127·(1.M) 为规格化数

符号位255 不等于0 NaN(非数值)

符号位255 0 无穷大

,减少下溢精度损失.非规格化数的隐含位是0,不是1.

2. 浮点数的加/减运算

加减法执行下述五步完成运算:

1)“对阶”操作比较两浮点数阶码的大小,求出其差ΔE,保留其大值E,E=max(Ex, Ey).当ΔE≠0时,将

阶码小的尾数右移ΔE位,并将其阶码加上ΔE,使两数的阶码值相等.

2)尾数加减运算执行对阶之后,两尾数进行加减操作.

3)规格化操作规格化的目的是使得尾数部分的绝对值尽可能以最大值的形式出现.

4)舍入在执行右规或者对阶时,尾数的低位会被移掉,使数值的精度受到影响,常用“0”舍“1”

入法.当移掉的部分最高位为1时,在尾数的末尾加1,如果加1后又使得尾数溢出,则

要再进行一次右规.

5)检查阶码是否溢出阶码溢出表示浮点数溢出.在规格化和舍入时都可能发生溢出,若阶码正常,加/减运算正

常结束.若阶码下溢,则设置机器运算结果为机器零,若上溢,则设置溢出标志.

定点数和浮点数可从如下几个方面进行比较

①当浮点机和定点机中的位数相同时,浮点数的表示范围比定点数大得多

②当浮点数位规格化数时,其相对绝对远比定点数高

③浮点数运算要分阶码部分和尾数部分,而且运算结果都要求规格化,故浮点运算步骤比定点运算的步骤多,运

算速度比定点运算的低,运算线路比定点运算的复杂

④在溢出的判断方法上,浮点数是对规格化的阶码进行判断,而定点数是对数值本身进行判断

总之,浮点数在数的表示范围,数的精度,溢出处理和程序编程方面(不取比例因子)均优于定点数.但在运算规则即硬件成本方面又不如定点数

(四) 算术逻辑单元ALU

1.串行加法器和并行加法器

1)串行进位加法器

并行加法器可以同时对数据的各位进行相加,一般用n个全加器来实现2个操作数的各位同时向加.其操作数的各位是同时提供的,由于进位是逐位形成,低位运算所产生的进位会影响高位的运算结果.

串行进位(也称波形进位)加法器,逻辑电路比较简单,但是最高位的加法运算,一定要等到所有低位的加法完成之后才能进行,低位的进位要逐步的传递到高位,逐级产生进位,因此运算速度比较慢.

2)并行进位加法器

为了提高运算速度,减少延迟时间,可以采用并行进位法,也叫提前进位或先行进位.

全加器中,输入Ai ,Bi,Ci-1,输出:

Si = Ai Bi Ci-1+Ai Bi Ci-1+Ai Bi Ci-1+Ai Bi Ci-1

Ci = Ai Bi Ci-1+Ai Bi Ci-1+Ai Bi Ci-1+Ai Bi Ci-1 = Ai Bi + (Ai+Bi)Ci-1

进位产生函数:Gi = Ai Bi

进位传递函数:Pi = Ai+Bi

Ci = Gi + Pi Ci-1

C4 = G4 + P4G3 + P4P3G2 + P4P3P2G1 + P4P3P2P1C0

并行进位加法器的运算速度很快,形成最高进位输出的延迟时间很短,但是以增加硬件逻辑线路为代价.对于长字长的加法器,往往将加法器分成若干组,在组内采用并行进位,组间则采用串行进位或并行进位,由此形成多种进位结构.

(1)单级先行进位

单级先行进位方式将n位字长分为若干组,每组内采用并行进位方式,组与组之间册采用串行进位方式. (2)多级先行进位

多级先行进位在组内和组间都采用先行进位方式.

16位单级先行进位加法器

2. 算术逻辑单元ALU的功能和机构

ALU部件是运算器中的主要组成部分,又称多功能函数发生器,主要用于完成各种算术运算和逻辑运算.

ALU的算术运算部件包含加法器,减法器,乘法器,除法器,增量器(+1),减量器(-1),BCD码运算器等组件.

ALU的主要工作是根据CPU指令要求执行各种指定运算,如加法,减法,乘法,除法,比较,逻辑移位等操作.

通用寄存器组是一组存取速度最快的存储器,用于保存参加运算的操作数和中间结果.访问寄存器无需高速缓存,也不需要运行总线周期,因此指令的执行速度很快.几乎所有的指令都要将寄存器指定为一个操作数,有些指令还要求将操作数存放在专用的寄存器中.

专用寄存器通常用于表示CPU所处于某种系统状态,ALU中有两个重要的状态寄存器:指令指针寄存器IP(即程序计数器PC)和标志寄存器FLAGS.

三, 存储器层次机构

(一) 存储器的分类

提高存储器带宽 ○1缩短储存周期 ○2增加存储字长,使每个周期可读/写更多的二进制数 ○

3增加存储体 内存

地址线n,数据线数k

芯片的容量为2k ×k 位

20位的地址可以访问1MB 的存储空间,32位的地址可以访问4GB 的内存空间,64位可以访问1800万TB

① 同样大小的芯片中,动态的RAM 的集成度远高于静态RAM,DRAM 的基本单元电路为一个MOS 管,SRAM 的基本单元

电路可为4~6个MOS 管

② DRAM 行、列按先后顺序输送,减少了芯片引脚,封装尺寸也减少

③ DRAM 的功耗比SRAM 小

④ DRAM 的价格比SRAM 的价格便宜

DRAM 也有缺点

① 由于使用动态元件(电容),因此它的速度比SRAM 低 ,也消耗一部分功率.通常容量不大的Cache 大多用SRAM 实现存储器与CPU 连接 对比项目 SRAM

DRAM

储存信息 触发器 电容

破坏性读出 非 是

需要刷新 非 是

行列地址 同时送 分两次

运行速度 快 慢

集成度 低 高

发热量 大 小

存储成本 高 低

存储器有3个重要的指标:速度,容量和每位价格,一般来说,速度越快,位价越高;容量越大,位价越低,容量大,速度就越低.上述三者的关系用下图表示:

存储系统层次结构主要体现在缓存-主存-辅存这两个存储层次上,如下图所示:

计算机组成原理_第四版课后习题答案(完整版)[]

第一章 1.比较数字计算机和模拟计算机的特点 解:模拟计算机的特点:数值由连续量来表示,运算过程是连续的;数字计算机的特点:数值由数字量(离散量)来表示,运算按位进行。两者主要区别见 P1 表 1.1 。 2.数字计算机如何分类?分类的依据是什么? 解:分类:数字计算机分为专用计算机和通用计算机。通用计算机又分为巨型机、大型机、 中型机、小型机、微型机和单片机六类。分类依据:专用和通用是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。 通用机的分类依据主要是体积、简易性、功率损耗、性能指标、数据存储容量、 指令系统规模和机器价格等因素。 3.数字计算机有那些主要应用?(略) 4.冯 . 诺依曼型计算机的主要设计思想是什么?它包括哪些主要组成部分? 解:冯 . 诺依曼型计算机的主要设计思想是:存储程序和程序控制。存储程序:将解题的程序(指令序列)存放到存储器中;程序控制:控制器顺序执行存储的程序,按指令功能控制全机协调地完成运算任务。 主要组成部分有:控制器、运算器、存储器、输入设备、输出设备。 5.什么是存储容量?什么是单元地址?什么是数据字?什么是指令字? 解:存储容量:指存储器可以容纳的二进制信息的数量,通常用单位KB MB GB来度量,存储 容 量越大,表示计算机所能存储的信息量越多,反映了计算机存储空间的大小。单元地址:单元地址简称地址,在存储器中每个存储单元都有唯一的地址编号,称为单元地 址。 数据字:若某计算机字是运算操作的对象即代表要处理的数据,则称数据字。指令字:若某计算机字代表一条指令或指令的一部分,则称指令字。 6.什么是指令?什么是程序? 解:指令:计算机所执行的每一个基本的操作。程序:解算某一问题的一串指令序列称为该问题的计算程序,简称程序。 7.指令和数据均存放在内存中,计算机如何区分它们是指令还是数据? 解:一般来讲,在取指周期中从存储器读出的信息即指令信息;而在执行周期中从存储器中读出的信息即为数据信息。

计算机组成原理第五版 白中英(详细)第4章习题参考答案

第4章习题参考答案 1.ASCII码是7位,如果设计主存单元字长为32位,指令字长为12位,是否合理?为什么? 答:不合理。指令最好半字长或单字长,设16位比较合适。一个字符的ASCII 是7位,如果设计主存单元字长为32位,则一个单元可以放四个字符,这也是可以的,只是在存取单个字符时,要多花些时间而已,不过,一条指令至少占一个单元,但只占一个单元的12位,而另20位就浪费了,这样看来就不合理,因为通常单字长指令很多,浪费也就很大了。 2.假设某计算机指令长度为32位,具有双操作数、单操作数、无操作数三类指令形式,指令系统共有70条指令,请设计满足要求的指令格式。 答:字长32位,指令系统共有70条指令,所以其操作码至少需要7位。 双操作数指令 单操作数指令 无操作数指令 3.指令格式结构如下所示,试分析指令格式及寻址方式特点。 答:该指令格式及寻址方式特点如下: (1) 单字长二地址指令。 (2) 操作码字段OP可以指定26=64种操作。 (3) 源和目标都是通用寄存器(可分指向16个寄存器)所以是RR型指令,即两个操作数均在寄存器中。 (4) 这种指令结构常用于RR之间的数据传送及算术逻辑运算类指令。 4.指令格式结构如下所示,试分析指令格式及寻址方式特点。 15 10 9 8 7 4 3 0 答:该指令格式及寻址方式特点如下: (1)双字长二地址指令,用于访问存储器。 (2)操作码字段OP可以指定26=64种操作。 (3)RS型指令,一个操作数在通用寄存器(选择16个之一),另一个操作数 在主存中。有效地址可通过变址寻址求得,即有效地址等于变址寄存器(选择16个之一)内容加上位移量。

计算机组成原理知识点总结——详细版

计算机组成原理2009年12月期末考试复习大纲 第一章 1.计算机软件的分类。 P11 计算机软件一般分为两大类:一类叫系统程序,一类叫应用程序。 2.源程序转换到目标程序的方法。 P12 源程序是用算法语言编写的程序。 目标程序(目的程序)是用机器语言书写的程序。 源程序转换到目标程序的方法一种是通过编译程序把源程序翻译成目的程序,另一种是通过解释程序解释执行。 3.怎样理解软件和硬件的逻辑等价性。 P14 因为任何操作可以有软件来实现,也可以由硬件来实现;任何指令的执行可以由硬件完成,也可以由软件来完成。对于某一机器功能采用硬件方案还是软件方案,取决于器件价格,速度,可靠性,存储容量等因素。因此,软件和硬件之间具有逻辑等价性。 第二章 1.定点数和浮点数的表示方法。 P16 定点数通常为纯小数或纯整数。 X=XnXn-1…..X1X0 Xn为符号位,0表示正数,1表示负数。其余位数代表它的量值。 纯小数表示范围0≤|X|≤1-2-n 纯整数表示范围0≤|X|≤2n -1

浮点数:一个十进制浮点数N=10E.M。一个任意进制浮点数N=R E.M 其中M称为浮点数的尾数,是一个纯小数。E称为浮点数的指数,是一个整数。 比例因子的基数R=2对二进制计数的机器是一个常数。 做题时请注意题目的要求是否是采用IEEE754标准来表示的浮点数。 32位浮点数S(31)E(30-23)M(22-0) 64位浮点数S(63)E(62-52)M(51-0) S是浮点数的符号位0正1负。E是阶码,采用移码方法来表示正负指数。 M为尾数。P18 P18

2.数据的原码、反码和补码之间的转换。数据零的三种机器码的表示方法。 P21 一个正整数,当用原码、反码、补码表示时,符号位都固定为0,用二进制表示的数位值都相同,既三种表示方法完全一样。 一个负整数,当用原码、反码、补码表示时,符号位都固定为1,用二进制表示的数位值都不相同,表示方法。 1.原码符号位为1不变,整数的每一位二进制数位求反得到反码; 2.反码符号位为1不变,反码数值位最低位加1,得到补码。 例:x= (+122)10=(+1111010)2原码、反码、补码均为01111010 Y=(-122)10=(-1111010)2原码11111010、反码10000101、补码10000110 +0 原码00000000、反码00000000、补码00000000 -0 原码10000000、反码11111111、补码10000000 3.定点数和浮点数的加、减法运算:公式的运用、溢出的判断。 P63 已知x和y,用变形补码计算x+y,同时指出结果是否溢出。 (1)x=11011 y=00011 (2)x=11011 y=-10101 (3)x=-10110 y=-00001

计算机组成原理答案

第二章运算方法和运算器练习 一、填空题 1. 补码加减法中,(符号位)作为数的一部分参加运算,(符号位产生的进位)要丢掉。 2. 为判断溢出,可采用双符号位补码,此时正数的符号用(00)表示,负数的符号用(11)表示。 3. 采用双符号位的方法进行溢出检测时,若运算结果中两个符号位(不相同),则表明发生了溢出。若结果的符号位为(01),表示发生正溢出;若为(10),表示发生负溢出。 4. 采用单符号位进行溢出检测时,若加数与被加数符号相同,而运算结果的符号与操作数的符号(不一致),则表示溢出;当加数与被加数符号不同时,相加运算的结果(不会产生溢出)。 5. 利用数据的数值位最高位进位C和符号位进位Cf的状况来判断溢出,则其表达式为over=(C⊕Cf)。 6. 在减法运算中,正数减(负数)可能产生溢出,此时的溢出为(正)溢出;负数减(正数)可能产生溢出,此时的溢出为(负)溢出。 7. 补码一位乘法运算法则通过判断乘数最末位Yi和Yi-1的值决定下步操作,当 YiYi-1=(10)时,执行部分积加【-x】补,再右移一位;当YiYi-1=(01)时,执行部分积加 【x】补,再右移一位。 8. 浮点加减运算在(阶码运算溢出)情况下会发生溢出。 9. 原码一位乘法中,符号位与数值位(分开运算),运算结果的符号位等于(两操作数符号的异或值)。 10. 一个浮点数,当其补码尾数右移一位时,为使其值不变,阶码应该(加1)。 11. 左规的规则为:尾数(左移一位),阶码(减1)。 12. 右规的规则是:尾数(右移一位),阶码(加1)。 13. 影响进位加法器速度的关键因素是(进位信号的传递问题)。 14. 当运算结果的补码尾数部分不是(11.0×××××或00.1×××××)的形式时,则应进行规格化处理。当尾数符号位为(01)或(10)时,需要右规。 15. (进位信号的产生与传递逻辑)称为进位链。

计算机组成原理第五版 白中英(详细)第5章习题参考答案

第5章习题参考答案 1.请在括号内填入适当答案。在CPU中: (1)保存当前正在执行的指令的寄存器是(IR ); (2)保存当前正在执行的指令地址的寄存器是(AR ) (3)算术逻辑运算结果通常放在(DR )和(通用寄存器)。 2.参见图5.15的数据通路。画出存数指令“STO Rl,(R2)”的指令周期流程图,其含义是将寄存器Rl的内容传送至(R2)为地址的主存单元中。标出各微操作信号序列。 解: STO R1, (R2)的指令流程图及微操作信号序列如下:

STO R1, (R2) R/W=R DR O, G, IR i R2O, G, AR i R1O, G, DR i R/W=W 3.参见图5.15的数据通路,画出取数指令“LAD (R3),R0”的指令周期流程图,其含义是将(R3)为地址主存单元的内容取至寄存器R2中,标出各微操作控制信号序列。 解: LAD R3, (R0)的指令流程图及为操作信号序列如下:

PC O , G, AR i R/W=R DR O , G, IR i R 3O , G, AR i DR O , G, R 0i R/W=R LAD (R3), R0 4.假设主脉冲源频率为10MHz ,要求产生5个等间隔的节拍脉冲,试画出时序产生器的逻辑图。 解:

5.如果在一个CPU 周期中要产生3个节拍脉冲;T l =200ns ,T 2=400ns ,T 3=200ns ,试画出时序产生器逻辑图。 解:取节拍脉冲T l 、T 2、T 3的宽度为时钟周期或者是时钟周期的倍数即可。所以取时钟源提供的时钟周期为200ns ,即,其频率为5MHz.;由于要输出3个节拍脉冲信号,而T 3的宽度为2个时钟周期,也就是一个节拍电位的时间是4个时钟周期,所以除了C 4外,还需要3个触发器——C l 、C 2、C 3;并令 211C C T *=;321C C T *=;313C C T =,由此可画出逻辑电路图如下:

(完整版)计算机组成原理知识点总结

第2章数据的表示和运算 主要内容: (一)数据信息的表示 1.数据的表示 2.真值和机器数 (二)定点数的表示和运算 1.定点数的表示:无符号数的表示;有符号数的表示。 2.定点数的运算:定点数的位移运算;原码定点数的加/减运算;补码定点数的加/减运算;定点数的乘/除运算;溢出概念和判别方法。 (三)浮点数的表示和运算 1.浮点数的表示:浮点数的表示范围;IEEE754标准 2.浮点数的加/减运算 (四)算术逻辑单元ALU 1.串行加法器和并行加法器 2.算术逻辑单元ALU的功能和机构 2.3 浮点数的表示和运算 2.3.1 浮点数的表示 (1)浮点数的表示范围 ?浮点数是指小数点位置可浮动的数据,通常以下式表示: N=M·RE 其中,N为浮点数,M为尾数,E为阶码,R称为“阶的基数(底)”,而且R

为一常数,一般为2、8或16。在一台计算机中,所有数据的R都是相同的,于是不需要在每个数据中表示出来。 浮点数的机内表示 浮点数真值:N=M ×2E 浮点数的一般机器格式: 数符阶符阶码值 . 尾数值 1位1位n位m位 ?Ms是尾数的符号位,设置在最高位上。 ?E为阶码,有n+1位,一般为整数,其中有一位符号位EJ,设置在E的最高位上,用来表示正阶或负阶。 ?M为尾数,有m位,为一个定点小数。Ms=0,表示正号,Ms=1,表示负。 ?为了保证数据精度,尾数通常用规格化形式表示:当R=2,且尾数值不为0时,其绝对值大于或等于0.5。对非规格化浮点数,通过将尾数左移或右移,并修改阶码值使之满足规格化要求。 浮点数的机内表示 阶码通常为定点整数,补码或移码表示。其位数决定数值范围。阶符表示数的大小。 尾数通常为定点小数,原码或补码表示。其位数决定数的精度。数符表示数的正负。

计算机组成原理课后复习资料白中英主编第五版立体化教材

计算机组成原理第五版习题答案计算机组成原理第五版习题答案 第一章 (1) 第二章 (3) 第三章 (14) 第四章 (19) 第五章 (21) 第六章 (27) 第七章 (31) 第八章 (34) 第九章 (36)

1

计算机组成原理第五版习题答案第一章 1.模拟计算机的特点是数值由连续量来表示,运算过程也是连续的。数字计算机的主要特点是按位运算,并且不连续地跳动计算。模拟计算机用电压表示数据,采用电压组合和测量值的计算方式,盘上连线的控制方式,而数字计算机用数字0 和 1 表示数据,采用数字计数的计算方式,程序控制的控制方式。数字计算机与模拟计算机相比,精度高,数据存储量大,逻辑判断能力强。 2.数字计算机可分为专用计算机和通用计算机,是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。 3.科学计算、自动控制、测量和测试、信息处理、教育和卫生、家用电器、人工智能。4.主要设计思想是:采用存储程序的方式,编制好的程序和数据存放在同一存储器中,计算机可以在无人干预的情况下自动完成逐条取出指令和执行指令的任务;在机器内部,指令和数据均以二进制码表示,指令在存储器中按执行顺序存放。主要组成部分有::运算器、逻辑器、存储器、输入设备和输出设备。 5.存储器所有存储单元的总数称为存储器的存储容量。每个存储单元都有编号,称为单元地址。如果某字代表要处理的数据,称为数据字。如果某字为一条指令,称为指令字。6.计算机硬件可直接执行的每一个基本的算术运算或逻辑运算操作称为一条指令,而解算某一问题的一串指令序列,称为程序。 7.取指周期中从内存读出的信息流是指令流,而在执行器周期中从内存读出的信息流是数据流。 8.半导体存储器称为内存,存储容量更大的磁盘存储器和光盘存储器称为外存,内存和外存共同用来保存二进制数据。运算器和控制器合在一起称为中央处理器,简称CPU,它用来控制计算机及进行算术逻辑运算。适配器是外围设备与主机联系的桥梁,它的作用相当于一个转换器,使主机和外围设备并行协调地工作。 9.计算机的系统软件包括系统程序和应用程序。系统程序用来简化程序设计,简化使用方法,提高计算机的使用效率,发挥和扩大计算机的功能用用途;应用程序是用户利用计算机来解决某些问题而编制的程序。 10.在早期的计算机中,人们是直接用机器语言来编写程序的,这种程序称为手编程序或目的程序;后来,为了编写程序方便和提高使用效率,人们使用汇编语言来编写程序,称为汇编程序;为了进一步实现程序自动化和便于程序交流,使不熟悉具体计算机的人也能很方便地使用计算机,人们又创造了算法语言,用算法语言编写的程序称为源程序,源程序通过编译系统产生编译程序,也可通过解释系统进行解释执行;随着计算机技术的日益发展,人们又创造出操作系统;随着计算机在信息处理、情报检索及各种管理系统中应用的发展,要求大量处理某些数据,建立和检索大量的表格,于是产生了数据库管理系统。 11.第一级是微程序设计级,这是一个实在的硬件级,它由机器硬件直接执行微指令; 第二级是一般机器级,也称为机器语言级,它由程序解释机器指令系统;第三级是操作系统级,它由操作系统实现;第四级是汇编语言级,它给程序人员提供一种符号形式语言,以减少程序编写的复杂性;第五级是高级语言级,它是面向用户的,为方便用户编写应用程序而设置的。用一系列的级来组成计算机的接口对于掌握计算机是如何组成的提供了一种好的结构和体制,而且用这种分级的观点来设计计算机对保证产生一个良好的系统结构也是很有帮助的。

02318自考计算机组成原理(问答)总结讲解

1.简述主存与CACHE之间的映象方式。 【答案】主存与CACHE之间的映象方式有直接映象、全相联印象、组相联印象三种。直接映象是指主存储器中的每个块只能够映象到CACHE中唯一一个指定块的地址映象方式。全相联映象是指每个主存块都能够映象到任一CACHE块的地址映象方式。组相联印象是直接映象和全相联映象两种方式的结合,它将存储空间分成若干组,在组间采用直接映象方式,而在组内采用全相联印象方式。 2.简述存储器间接寻址方式的含义,说明其寻址过程。 【答案】含义:操作数的地址在主存储器中,其存储器地址在指令中给出。 寻址过程:从指令中取出存储器地址,根据这个地址从存储器中读出操作数的地址,再根据这个操作数的地址访问主存,读出操作数。 3.微程序控制器主要由哪几部分构成?它是如何产生控制信号的? 【答案】微程序控制器主要由控制存储器、微指令寄存器μIR、微地址寄存器μAR、地址转移逻辑等构成。 操作控制信号的产生:事先把操作控制信号以代码形式构成微指令,然后存放到控制存储器中,取出微指令时,其代码直接或译码产生操作控制信号。 4.简述提高总线速度的措施。 【答案】从物理层次:1增加总线宽度;2增加传输的数据长度;3缩短总线长度;4降低信号电平;5采用差分信号;6采用多条总线。从逻辑层次:1简化总线传输协议;2采用总线复用技术;3采用消息传输协议。 5.简述中断方式的接口控制器功能。 【答案】中断方式的接口控制器功能:①能向CPU发出中断请求信号;②能发出识别代码提供引导CPU在响应中断请求后转入相应服务程序的地址;③CPU要能够对中断请求进行允许或禁止的控制;④能使中断请求参加优先级排队。 6.CPU与DMA访问内存冲突的裁决的方法有哪些? 【答案】①CPU等待DMA的操作;②DMA乘存储器空闲时访问存储器;③CPU与DMA交替访问存储器。 08真题1.高速缓存Cache用来存放什么内容?设置它的主要目的是什么? (3分) 参考答案:Cache中存放当前活跃的程序和数据,作为主存活跃区的副本。(2分) 设置它的主要目的是解决CPU 与主存之间的速度匹配。(2分) 2.什么是堆栈?说明堆栈指针SP的作用。(3分) 参考答案:堆栈是一种按先进后出(或说成是后进先出)顺序进行存取的数据结构或存储区域。常在主存中划一小块连续单元区作为堆栈。(3分) 堆栈指针SP是用来保存最后进入堆栈的位置(栈顶)的寄存器。(1分) 3.简述微程序控制方式的基本思想。它有什么优点和缺点? (3分) 参考答案:(P132-134)微程序控制的基本思想可归纳为: (1)将微操作命令以微码形式编成微指令,并事先固化在控制存储器(ROM)中。(1分) (2)将一条机器指令的操作分解为若干微操作序列,用一段微程序对应地解释执行,微程序中每条微指令所包含的微命令控制实现一步操作。(1分) 优点:结构规整,有利于设计自动化;易于修改与扩展,灵活性、通用性强;适于作系列机的控制器,性能价格比较高;可靠性较高,易于诊断与维护。(1分) 缺点:速度相对较慢。(1分) 4.什么是中断?请说明它的特点和适用场合。(3分) 参考答案:中断是指在计算机的运行过程中,CPU接到更紧迫的服务请求而暂停执行现行程序,转去执行中断服务程序,以处理某些随机事态;并在处理完毕后自动恢复原程序的执行。(2分) 主要特点是具有随机性,通过执行程序来处理随机事件。(1分) 它适用于中低速I/O操作的管理,以及处理随机发生的复杂事件。(1分) 5.什么是串行总线?什么是并行总线?试比较它们的应用场合。(3分) 参考答案:串行总线采用一条数据线;并行总线采用多条线路并行地传输数据信号。(2分) 串行总线一般用于较长距离的较低速率的数据传输;并行总线一般用于较短距离的高速数据传输。(2分) 07真题1.半导体随机访问存储器芯片主要有哪两种类型?(5分) 参考答案:主要有静态存储器(SRAM)芯片和动态存储器(DRAM)芯片。 2.简述CISC和RISC的含义。(5分) 参考答案:CISC:复杂指令系统计算机,其指令条数较多,指令功能和结构复杂,进而机器结构复杂。(2分)RISC:精简指令系统计算机,其指令条数较少,指令结构和功能简单,进而机器结构简单,提高了机器的性能价格比。

计算机组成原理课后答案

… 第一章计算机系统概论 什么是计算机系统、计算机硬件和计算机软件硬件和软件哪个更重要 计算机系统:计算机硬件、软件和数据通信设备的物理或逻辑的综合体 计算机硬件:计算机的物理实体 计算机软件:计算机运行所需的程序及相关资料 硬件和软件在计算机系统中相互依存,缺一不可,因此同样重要 如何理解计算机系统的层次结构 实际机器M1向上延伸构成了各级虚拟机器,机器M1内部也可向下延伸而形成下一级的微程序机器M0,硬件研究的主要对象归结为传统机器M1和微程序机器M0,软件研究对象主要是操作系统及以上的各级虚拟机 》 说明高级语言、汇编语言和机器语言的差别及其联系。 机器语言是可以直接在机器上执行的二进制语言 汇编语言用符号表示指令或数据所在存储单元的地址,使程序员可以不再使用繁杂而又易错的二进制代码来编写程序 高级语言对问题的描述十分接近人们的习惯,并且还具有较强的通用性 如何理解计算机组成和计算机体系结构 计算机体系结构是对程序员可见的计算机系统的属性 计算机组成对程序员透明,如何实现计算机体系结构所体现的属性 冯·诺依曼计算机的特点是什么 。 由运算器、控制器、存储器、输入设备、输出设备五大部件组成 指令和数据以同一形式(二进制形式)存于存储器中 指令由操作码、地址码两大部分组成 指令在存储器中顺序存放,通常自动顺序取出执行 以运算器为中心(原始冯氏机) 画出计算机硬件组成框图,说明各部件的作用及计算机硬件的主要技术指标。 计算机硬件各部件 运算器:ACC, MQ, ALU, X ' 控制器:CU, IR, PC 主存储器:M, MDR, MAR I/O设备:设备,接口 计算机技术指标: 机器字长:一次能处理数据的位数,与CPU的寄存器位数有关 存储容量:主存:存储单元个数×存储字长 运算速度:MIPS, CPI, FLOPS 解释概念 & 主机:计算机硬件的主体部分,由 CPU+MM(主存或内存)组成 CPU:中央处理器,是计算机硬件的核心部件,由运算器+控制器组成 主存:计算机中存放正在运行的程序和数据的存储器,可随机存取;由存储体、各种逻辑部件及控制电路组成

计算机组成原理课后答案

第一章计算机系统概论 1. 什么是计算机系统、计算机硬件和计算机软件?硬件和软件哪个更重要? 解:P3 计算机系统:由计算机硬件系统和软件系统组成的综合体。 计算机硬件:指计算机中的电子线路和物理装置。 计算机软件:计算机运行所需的程序及相关资料。 硬件和软件在计算机系统中相互依存,缺一不可,因此同样重要。 5. 冯?诺依曼计算机的特点是什么? 解:冯?诺依曼计算机的特点是:P8 ●计算机由运算器、控制器、存储器、输入设备、输出设备五大部件组成; ●指令和数据以同同等地位存放于存储器内,并可以按地址访问; ●指令和数据均用二进制表示; ●指令由操作码、地址码两大部分组成,操作码用来表示操作的性质,地址码用来表示操 作数在存储器中的位置; ●指令在存储器中顺序存放,通常自动顺序取出执行; ●机器以运算器为中心(原始冯?诺依曼机)。 7. 解释下列概念: 主机、CPU、主存、存储单元、存储元件、存储基元、存储元、存储字、存储字长、存储容量、机器字长、指令字长。 解:P9-10 主机:是计算机硬件的主体部分,由CPU和主存储器MM合成为主机。 CPU:中央处理器,是计算机硬件的核心部件,由运算器和控制器组成;(早期的运算器和控制器不在同一芯片上,现在的CPU内除含有运算器和控制器外还集成了CACHE)。 主存:计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取;由存储体、各种逻辑部件及控制电路组成。 存储单元:可存放一个机器字并具有特定存储地址的存储单位。 存储元件:存储一位二进制信息的物理元件,是存储器中最小的存储单位,又叫存储基元或存储元,不能单独存取。 存储字:一个存储单元所存二进制代码的逻辑单位。 存储字长:一个存储单元所存二进制代码的位数。 存储容量:存储器中可存二进制代码的总量;(通常主、辅存容量分开描述)。 机器字长:指CPU一次能处理的二进制数据的位数,通常与CPU的寄存器位数有关。 指令字长:一条指令的二进制代码位数。 8. 解释下列英文缩写的中文含义: CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、I/O、MIPS、CPI、FLOPS 解:全面的回答应分英文全称、中文名、功能三部分。 CPU:Central Processing Unit,中央处理机(器),是计算机硬件的核心部件,主要由运算器和控制器组成。 PC:Program Counter,程序计数器,其功能是存放当前欲执行指令的地址,并可自动计数

计算机组成原理考试重点以及题库总结

计算机组成原理考试重点以及题库总结

计算机组成原理考试重点以及题库总结 第一章 重点一:计算机系统由硬件和软件两部分组成,软件又分为系统软件和应用软件。 重点二:冯诺依曼机的组成与特点 1.冯诺依曼机由控制器、运算器、存储器、输入设备和输出设备五 部分组成。 2.数据和指令存储在存储器,按地址访存。 3.指令和数据用二进制表示。 4.指令由操作码和地址码组成。 5.存储程序 6.以运算器为中心 重点三:区分存储字、存储字长、机器字长、CPI、MIPS、FLOPS 存储字:存储单元中二进制代码的组合。 存储字长:存储单元中二进制代码的位数。 机器字长:CPU 一次能处理数据的位数,与CPU中的寄存器位数有关

CPI:执行一条指令所需时钟周期数 MIPS:每秒执行百万条指令 FLOPS:每秒浮点运算次数 题库中对应的习题: 1、存储字是指() A、存放在一个存储单元中的二进制代码组合 B、存放在一个存储单元中的二进制代码位数 C、存储单元的个数 D、机器指令的位数 2、存储字长是指() A、存放在一个存储单元中的二进制代码组合 B、存放在一个存储单元中的二进制代码位数 C、存储单元的个数 D、机器指令的位数 3、电子计算机的发展已经经历了四代,四代计算机的主要元器件分别是() A、电子管、晶体管、中小规模集成电路、激光器件 B、晶体管、中小规模集成电路、激光器件、光介质 C、电子管、晶体管、中小规模集成电路、大规模集成电路 D、电子管、数码管、中小规律集成电路、激光器件 4、完整的计算机系统应包括() A 运算器、存储器、控制器 B 外部设备和主机 C 主机和应用程序 D 配套的硬件设备和软件系统

计算机组成原理第二版课后习题答案

第1章计算机系统概论 1. 什么是计算机系统、计算机硬件和计算机软件?硬件和软件哪个更重要? 解: 计算机系统:由计算机硬件系统和软件系统组成的综合体。 计算机硬件:指计算机中的电子线路和物理装置。 计算机软件:计算机运行所需的程序及相关资料。 硬件和软件在计算机系统中相互依存,缺一不可,因此同样重要。 2. 如何理解计算机的层次结构? 答:计算机硬件、系统软件和应用软件构成了计算机系统的三个层次结构。 (1)硬件系统是最内层的,它是整个计算机系统的基础和核心。 (2)系统软件在硬件之外,为用户提供一个基本操作界面。 (3)应用软件在最外层,为用户提供解决具体问题的应用系统界面。 通常将硬件系统之外的其余层称为虚拟机。各层次之间关系密切,上层是下层的扩展,下层是上层的基础,各层次的划分不是绝对的。 3. 说明高级语言、汇编语言和机器语言的差别及其联系。 答:机器语言是计算机硬件能够直接识别的语言,汇编语言是机器语

言的符号表示,高级语言是面向算法的语言。高级语言编写的程序(源程序)处于最高层,必须翻译成汇编语言,再由汇编程序汇编成机器语言(目标程序)之后才能被执行。 4. 如何理解计算机组成和计算机体系结构? 答:计算机体系结构是指那些能够被程序员所见到的计算机系统的属性,如指令系统、数据类型、寻址技术组成及I/O机理等。计算机组成是指如何实现计算机体系结构所体现的属性,包含对程序员透明的硬件细节,如组成计算机系统的各个功能部件的结构和功能,及相互连接方法等。 5. 冯?诺依曼计算机的特点是什么? 解:冯?诺依曼计算机的特点是:P8 ●计算机由运算器、控制器、存储器、输入设备、输出设备五大 部件组成; ●指令和数据以同同等地位存放于存储器内,并可以按地址访 问; ●指令和数据均用二进制表示; ●指令由操作码、地址码两大部分组成,操作码用来表示操作的 性质,地址码用来表示操作数在存储器中的位置; ●指令在存储器中顺序存放,通常自动顺序取出执行; ●机器以运算器为中心(原始冯?诺依曼机)。

计算机组成原理第四版课后题答案五,六章

第五章 1.请在括号内填入适当答案。在CPU中: (1) 保存当前正在执行的指令的寄存器是(指令寄存器IR); (2) 保存当前正要执行的指令地址的寄存器是(程序计数器PC); (3) 算术逻辑运算结果通常放在(通用寄存器)和(数据缓冲寄存器DR)。 2.参见下图(课本P166图5.15)的数据通路。画出存数指令"STA R1 ,(R2)"的指令周期 流程图,其含义是将寄存器R1的内容传送至(R2)为地址的主存单元中。标出各微操作信 号序列。 解:"STA R1 ,(R2)"指令是一条存数指令,其指令周期流程图如下图所示:

3.参见课本P166图5.15的数据通路,画出取数指令"LDA(R3),RO"的指令周期流程图, 其含义是将(R3)为地址的主存单元的内容取至寄存器R0中,标出各微操作控制信号序列。 5.如果在一个CPU周期中要产生3个脉冲 T1 = 200ns ,T2 = 400ns ,T3 = 200ns,试画出 时序产生器逻辑图。 解:节拍脉冲T1 ,T2 ,T3 的宽度实际等于时钟脉冲的周期或是它的倍数,此时T1 = T3 =200ns , T2 = 400 ns ,所以主脉冲源的频率应为 f = 1 / T1 =5MHZ 。为了消除节拍脉冲上的毛刺,环 型脉冲发生器可采用移位寄存器形式。下图画出了题目要求的逻辑电路图和时序信号关系。根据关 系,节拍脉冲T1 ,T2 ,T3 的逻辑表达式如下:

T1 = C1·, T2 = , T3 = 6.假设某机器有80条指令,平均每条指令由4条微指令组成,其中有一条取指微指令是所有指 令公用的。已知微指令长度为32位,请估算控制存储器容量。 解:微指令条数为:(4-1)×80+1=241条 取控存容量为:256×32位=1KB 7. 某ALU器件使用模式控制码M,S3,S2,S1,C来控制执行不同的算术运算和逻辑操作。 下表列出各条指令所要求的模式控制码,其中y为二进制变量,F为

计算机组成原理考点总结

《计算机组成原理》总结 --内部复习文件 第一章计算机系统概论 1.1计算机的分类 电子计算机分两大类:电子模拟计算机、电子数字计算机 2.4计算机的性能指标:(基本运算p5) ⑴处理机字长:处理机运算器一次能够完成二进制运算的位数,如32位、64位 ⑵存储器容量:存储器中所有存储单元的总数目,通常用 KB,MB,GB,TB来表示 ⑶计算机五个组成部分:存储器、运算器、控制器、输入设备、输出设备(其中cpu由运算器和控制器组成) ⑷冯.诺依曼型计算机的设计思想:存储程序并按地址顺序执行 ⑸计算机软件一般分为两大类:①系统程序②应用程序 ⑹硬件可以由软件来实现,软件也可以由硬件来实现,故软件与硬件的逻辑等价性。 第二章运算方法和运算器 1.计算机中常用的数据表示格式有两种:一是定点格式,二是浮点格式。 2.阶码位数多,表示数的范围大;尾数位数多,说明该数的精确度越高。 3.数的机器码表示:原码、反码、补码、移码表示法

4.浮点加、减法运算步骤:(0操作数检查)、(比较阶码大小并完成对阶)、(尾数求和运算)、(结果规格化处理)、(舍入处理) 第三章多层次的存储器 3.1.1存储器的分类: 1.按存取方式分:随机存储器和顺序存储器 2.按存储内容可变分:只读存储器(ROM)和随机存储器(RAM) 3.6 cache基本原理: ①cache解决的问题:为了解决cpu与主存之间速度不匹配问题; ②cache基于的原理:程序运行过程中具有(空间局部性)和(时间局部性)原理。 ③cache实现是由(硬件)方式实现 ④cache地址没有增加,容量也没有增加。 ⑤cache命中率:(重点p91大题计算) 3.6.2 主存与cache的地址映射 ①全相联映射方式:主存中的任意一块可以放在cache中的任意一行上优点:非常灵活缺点:比较电路难以设计和实现适用:适合于小容量cache采用 ②直接映射方式:主存块只能拷贝到cache的一个特定位置上优点:硬件简单,成本低缺点:每个主存块只有一个固定的行位置可存放。适用:适合需要大容量cache的场合。 ③组相联映射方式:综合前面两者的优缺点。 3.6.3 替换策略

计算机组成原理练习题答案

一、选择题 1、完整得计算机系统应包括运算器、存储器、控制器。 一个完整得计算系统应该就是:硬件系统与软件系统,硬件系统应该包括运算器,控制器,存储器,输入设备与输出设备,软件系统包括系统软件与应用软件、而您给得答案中B与D就是可以排除得,也就就是不能选,A与C两个中A得可能性最大,答案只能选A、 3、冯、诺依曼计算机工作方式得基本特点就是按地址访问并顺序执行指令. 4、移码表示法主要用于表示浮点数中得阶码。 5、动态RAM得刷新就是以行为单位得。 8、在定点运算器中产生溢出得原因就是运算得结果得超出了机器得表示范围。 10、在指令得地址字段中,直接指出操作数本身得寻址方式,称为立即寻址. 11、目前得计算机,从原理上讲指令与数据都以二进制形式存放. 13、计算机问世至今,新型机器不断推陈出新,不管怎样更新,依然保有“存储程序”得概念,最早提出这种概念得就是冯、诺依曼。 16、在CPU中,跟踪后继指令地址得寄存器就是程序计数器。 20、系统总线中地址总线得作用就是用于选择指定得存储单元或外设。 21、计算机中得主机包含运算器、控制器、存储器。 23、原码一位乘运算,乘积得符号位由两个操作数得符号进行异或运算. 24、对于真值“0”表示形式唯一得机器数就是移码与补码。 25、若[X]补=0、0100110,则[X]反= 0、0100110。--x为正数 26、在CPU中,存放当前执行指令得寄存器就是指令寄存器。 保存当前正在执行得指令得寄存器称为(指令寄存器)。 指示当前正在执行得指令地址得寄存器称为(程序计数器或指令计数器)。 27、下列编码中通常用作字符编码得就是ASCII码。 ASCII ASCII(American Standard CodeforInformationInterchange,美国信息互换标准代码)就是基于拉丁字母得一套电脑编码系统.它主要用于显示现代英语与其她西欧语言。它就是现今最通用得单字节编码系统,并等同于国际标准ISO/IEC646。28、在下列存储器中,半导体存储器可以作为主存储器. 30、在CPU中跟踪指令后继地址得寄存器就是PC。 31、EPROM就是指光擦除可编程得只读存储器。

《计算机组成原理》总结完整版

《计算机组成原理》学科复习总结 ★第一章计算机系统概论 ?本章内容:本章主要讲述计算机系统的组成、计算机系统的分层结构、以及计算机的一些主要指标等 ?需要掌握的内容:计算机软硬件的概念,计算机系统的层次结构、体系结构和计算机组成的概念、冯.诺依曼的主要思想及其特点、计算机的主要指标 ?本章主要考点:概念 1、当前的CPU由那几部分组成组成? 控制器、运算器、寄存器、cache (高速缓冲存储器) 2、一个完整的计算机系统应包括那些部分? 配套的硬件设备和软件系统 3、什么是计算机硬件、计算机软件?各由哪几部分组成?它们之间有何联系? 计算机硬件是指计算机的实体部分,它由看得见摸得着的各种电子元器件,各类光、电、机设备的实物组成。主要包括运算器(ALU)、控制器(CU)、存储器、输入设备和输出设备五大组成部分。软件是计算机程序及其相关文档的总称,主要包括系统软件、应用软件和一些工具软件。软件是对硬件功能的完善与扩充,一部分软件又是以另一部分软件为基础的再扩充。 4、冯·诺依曼计算机的特点 ●计算机由运算器、存储器、控制器、输入设备和输出设备五大部件组成 ●指令和数据以同等地位存于存储器内,可按地址寻访 ●指令和数据用二进制表示 ●指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储 器中的位置 ●指令在存储器内按顺序存放 ●机器以运算器为中心,输入输出设备和存储器间的数据传送通过运算器完成 5、计算机硬件的主要技术指标 ●机器字长:CPU 一次能处理数据的位数,通常与CPU 中的寄存器位数有关 ●存储容量:存储容量= 存储单元个数×存储字长;MAR(存储器地址寄存器)的位数 反映存储单元的个数,MDR(存储器数据寄存器)反映存储字长 主频 吉普森法 ●运算速度MIPS 每秒执行百万条指令 CPI 执行一条指令所需的时钟周期数 FLOPS 每秒浮点运算次数 ◎第二章计算机的发展及应用 ?本章内容:本章主要讲述计算机系统、微型计算机系统的发展过程以及应用。 ?需要掌握的内容:计算机的发展的不同阶段区分的方法、微型计算机发展中的区分、摩尔定律 ?本章主要考点:概念 1、解释摩尔定律

计算机组成原理知识点总结

《计算机组成原理》(白中英)复习 第一章计算机系统概论 电子数字计算机的分类(P1) 通用计算机(超级计算机、大型机、服务器、工作站、微型机和单片机)和专用计算机。计算机的性能指标(P5) 数字计算机的五大部件及各自主要功能(P6) 五大部件:存储器、运算器、控制器、输入设备、输出设备。 存储器主要功能:保存原始数据和解题步骤。 运算器主要功能:进行算术、逻辑运算。 控制器主要功能:从内存中取出解题步骤(程序)分析,执行操作。 输入设备主要功能:把人们所熟悉的某种信息形式变换为机器内部所能接收和识别的二进制信息形式。 输出设备主要功能:把计算机处理的结果变换为人或其他机器所能接收和识别的信息形式。 计算机软件(P11) 系统程序——用来管理整个计算机系统 应用程序——按任务需要编制成的各种程序 第二章运算方法和运算器 课件+作业 第三章内部存储器 存储器的分类(P65) 按存储介质分类: 易失性:半导体存储器 非易失性:磁表面存储器、磁芯存储器、光盘存储器 按存取方式分类: 存取时间与物理地址无关(随机访问): 随机存储器RAM——在程序的执行过程中可读可写 只读存储器ROM——在程序的执行过程中只读 存取时间与物理地址有关(串行访问): 顺序存取存储器磁带 直接存取存储器磁盘 按在计算机中的作用分类: 主存储器:随机存储器RAM——静态RAM、动态RAM 只读存储器ROM——MROM、PROM、EPROM、EEPROM Flash Memory 高速缓冲存储器(Cache) 辅助存储器——磁盘、磁带、光盘 存储器的分级(P66) 存储器三个主要特性的关系:速度、容量、价格/位 多级存储器体系结构:高速缓冲存储器(cache)、主存储器、外存储器。 主存储器的技术指标(P67) 存储容量:存储单元个数M×每单元位数N 存取时间:从启动读(写)操作到操作完成的时间 存取周期:两次独立的存储器操作所需间隔的最小时间,时间单位为ns。

计算机组成原理都给对方版答案(完整版)

1.1 概述数字计算机的发展经过了哪几个代各代的基本特征是什么 略。 1.2 你学习计算机知识后,准备做哪方面的应用略。 1.3 试举一个你所熟悉的计算机应用例子。 略。 1.4 计算机通常有哪些分类方法你比较了解的有哪些类型的计算机 `

1.5 计算机硬件系统的主要指标有哪些 答:机器字长、存储容量、运算速度、可配置外设等。 答:计算机硬件系统的主要指标有:机器字长、存储容量、运算速度等。 1.6 什么是机器字长它对计算机性能有哪些影响

答:指CPU一次能处理的数据位数。它影响着计算机的运算速度,硬件成本、指令系统功能,数据处理 精度等。 1.7 什么是存储容量什么是主存什么是辅存 答:存储容量指的是存储器可以存放数据的数量(如字节数)。它包括主存容量和辅存容量。 主存指的是CPU能够通过地址线直接访问的存储器。如内存等。 辅存指的是CPU不能直接访问,必须通过I/O接口和地址变换等方法才能访问的存储器,如硬盘,u盘等。1.8 根据下列题目的描述,找出最匹配的词或短语,每个词或短语只能使用一次。 (1)为个人使用而设计的计算机,通常有图形显示器、键盘和鼠标。 (2)计算机中的核心部件,它执行程序中的指令。它具有加法、测试和控制其他部件的功能。

(3)计算机的一个组成部分,运行态的程序和相关数据置于其中。 (4)处理器中根据程序的指令指示运算器、存储器和I/O设备做什么的部件。 (5)嵌入在其他设备中的计算机,运行设计好的应用程序实现相应功能。 (6)在一个芯片中集成几十万到上百万个晶体管的工艺。 (7)管理计算机中的资源以便程序在其中运行的程序。 (8)将高级语言翻译成机器语言的程序。 (9)将指令从助记符号的形式翻译成二进制码的程序。 (10)计算机硬件与其底层软件的特定连接纽带。 供选择的词或短语:

白中英《计算机组成原理》(第5版)教材精讲(计算机系统概论 计算机的硬件)

1.3 计算机的硬件 一、硬件组成要素 1.举例说明 要了解数字计算机的主要组成和工作原理,可从打算盘说起。假设给一个算盘、一张带有横格的纸和一支笔,要求计算这样一个题目。为了和下面讲到的内容做比较,不妨按以下方法把使用算盘进行解题的过程步骤事先用笔详细地记录在带横格的纸上。 (1)首先,将横格纸编上序号,每一行占一个序号,如l,2,3,…,n,如表1-2所示。 (2)其次,把计算式中给定的四个数a,b,c和z分别写到横格纸的第 9,10,11,12行上,每一行只写一个数。 (3)接着详细列出给定题目的解题步骤,而解题步骤也需要记在横格纸上,每一步也只写一行。第一步写到横格纸的第l行,第二步写到第2行,……依次类推。 (4)如表1-2所示,根据表中所列的解题步骤,从第l行开始,一步一步进行计算,最后可得出所要求的结果。

表1-2 解题步骤和数据记录在横格纸上 2.冯·诺依曼体系结构 计算机组成原理讨论的基础就是冯·诺依曼的计算机,其基本设计思想就是存储程序和程序控制,具有以下特点: (1)由运算器、存储器、控制器、输入设备和输出设备五大部件组成计算机系统,并规定了这五部分的基本功能。

(2)采用存储程序的方式,程序和数据放在同一个存储器中,指令和数据一样可以送到运算器运算,即由指令组成的程序是可以修改的。 (3)数据以二进制数码表示。 (4)指令由操作码和地址码组成。 (5)指令在存储器中按顺序存放,由指令计数器PC 指明要执行的指令所在单元地址,一般按顺序递增,但可按运算结果或外界条件改变。 (6)机器以运算器为中心,I/O 设备与存储器间数据传送都通过运算器。 计算机硬件系统的基本构成如图1-9所示。 图1-9 冯·诺依曼型计算机 二、 运算器 算术运算和逻辑运算 ; 在计算机中参与运算的数是二进制的 ; 运算器的长度一般是8、16、32或64位。 运算器的结构示意图如图1-10所示。

相关文档
最新文档