计算机组成原理讲义.docx

上传人:b****3 文档编号:3941034 上传时间:2022-11-26 格式:DOCX 页数:136 大小:2.34MB
下载 相关 举报
计算机组成原理讲义.docx_第1页
第1页 / 共136页
计算机组成原理讲义.docx_第2页
第2页 / 共136页
计算机组成原理讲义.docx_第3页
第3页 / 共136页
计算机组成原理讲义.docx_第4页
第4页 / 共136页
计算机组成原理讲义.docx_第5页
第5页 / 共136页
点击查看更多>>
下载资源
资源描述

计算机组成原理讲义.docx

《计算机组成原理讲义.docx》由会员分享,可在线阅读,更多相关《计算机组成原理讲义.docx(136页珍藏版)》请在冰豆网上搜索。

计算机组成原理讲义.docx

计算机组成原理讲义

计算机组成原理

课程简介

  计算机组成原理是讲述计算机的一般结构、组成、原理的课程,本课程的基础课是数字电路、离散数学等,后继课程有计算机系统结构、微机原理等。

选用教材:

   白中英主编,《计算机组成原理(第三版)》,科学出版社

第一章计算机系统概论

学习目标

 ·计算机硬件、软件的基本概念

 ·计算机系统的基本组成;

 ·计算机的工作过程;

 ·计算机系统的层次结构。

本章需掌握的主要内容:

1.计算机的发展、分类、特点与应用;

2.计算机硬件和软件的基本概念;

3.计算机硬件系统的组织,各部分的功能及其组成框图;

4.计算机的工作过程,即执行指令的过程;

5.冯.诺依曼型计算机的设计思想;

6.计算机系统的层次结构。

 对计算机有一个总体的概念,以便展开后续各章内容。

1.1计算机的分类和应用

1.1.1计算机的分类

计算机分类:

模拟:

处理在时间和数值上连续的量

数字:

处理离散的量

数字计算机分类:

专用计算机:

如工控机、DSP、IOP等

通用计算机:

GPP

通用机分类:

巨型机(Super-Computer)、大型机(Mainframe)、中型机(Medium-sizeComputer)、小型机(minicomputer)、微型机(microcomputer)、单片机(Single-ChipComputer)

1.1.2计算机的应用

·科学计算:

传统方式:

工作量大、人工处理慢

·自动控制:

数控机床、流水线控制

·测量和测试:

提高精度、在恶劣条件下的测量

·信息处理:

·教育和卫生:

计算机辅助教学(CAI)、多媒体教室、CT(Computerizedtomography)

·家用电器:

·人工智能

1.2计算机的硬件

1.2.1数字计算机的硬件组成

概念:

存储单元、地址、存储容量、外存储器、内存储器、指令、程序、指令的组成、存储程序、程序控制、指令系统、指令周期、执行周期、CPU、主机、数据字、指令字、数据流、指令流、适配器。

冯·诺依曼体系结构:

(1)采用二进制形式表示数据和指令

数据和指令在代码的外形上并无区别.都是由0和1组成的代码序列,只是各自约定的含义不同而已。

采用二进制、使信息数字化容易实现,可以用二值逻辑工具进行处理。

程序信息本身也可以作为被处理的对象,进行加工处理,例如对照程序进行编译,就是将源程序当作被加工处理的对象。

(2)采用存储程序方式

这是诺依曼思想的核心内容。

如前所述,它意味着事先编制程序,事先将程序(包含指令和数据)存入主存储器中,计算机在运行程序时就能自动地、连续地从存储器中依次取出指令且执行。

这是计算机能高速自动运行的基础。

计算机的工作体现为执行程序,计算机功能的扩展在很大程度上体现为所存储程序的扩展。

计算机的许多具体工作方式也是由此派生的。

(3)由运算器、存储器、控制器、输入装置和输出装置等五大部件组成计算机系统,并规定了这五部分的基本功能。

上述这些概念奠定了现代计算机的基本结构思想,并开创了程序设计的新时代。

到目前为止,绝大多数计算机仍沿用这一体制,称为冯·诺依曼机体制。

学习计算机工作原理也就从冯·诺依曼概念入门。

•一般的计算机结构框图(存储器为中心)

五大组成部分:

运算器、控制器、存储器、输入/输出设备。

1.运算器

•算术运算和逻辑运算

•在计算机中参与运算的数是二进制的

运算器的长度一般是8、16、32或64位

2.存储器

•存储器

–存储数据和程序

–容量(存储单元、存储单元地址、容量单位)

–分类内存(ROM、RAM)、外存

–存储器单位:

•210byte=1K

•210K=1M

•210M=1G

•210G=1T

存储单元:

在存储器中保存一个数的16个触发器,称为一个存储单元。

  地址:

存储器是由许多存储单元组成,每个存储单元的编号,称为地址。

  存储容量:

存储器所有存储单元的总数。

通常用单位“KB、MB”表示,如64KB,128MB。

存储容量越大,表示计算机记忆储存的信息就越多。

  外存储器:

计算机中又配备的存储容量更大的磁盘存储器、光盘存储器等。

相对而言,半导体存储器称为内存储器,简称内存。

3、控制器

•控制器

–指令和程序(计算机工作原理)

–指令的形式(操作和地址码、存储程序的概念、指令中程序和数据的存放、指令系统)

–控制器的基本任务:

按照一定的顺序一条接着一条取指令、指令译码、执行指令。

取指周期和执行周期

–指令流和数据流

指令:

每一个基本操作就叫做一条指令,

程序:

而解算某一问题的一串指令序列,叫做该问题的计算程序,简称为程序。

指令形式:

的内容由两部分组成,即操作的性质和操作的地址。

前者称为操作码,后者称为地址码。

操作码

地址码

 操作码:

指出指令所进行的操作,如加、减、乘、除、取数、存数等等;

地址码:

表示参加运算的数据应从存储器的哪个单元取,运算的结果应存到哪个单元。

取指周期:

通常把取指令的一段时间叫做取指周期,

执行周期:

而把执行指令的一段时间叫做执行周期。

主机:

CPU和存储器的合称

4、适配器与I/O设备

•计算机的发展(系统结构1.2doc)

手工模仿计算机工作

(1)

手工模仿计算机工作

(2)

•加法001

•减法010

•乘法011

•除法100

•取数101

•存数110

•打印111

•停机000

操作码操作数

1.2.2计算机系统结构的过去和未来

发展:

电子管→晶体管→集成电路→大规模、超大规模集成电路

趋势:

●    由于计算机网络和分布式计算机系统能为信息处理提供廉价的服务,因此计算机系统的进一步发展,“三网合一”,将进入以通信为中心的体系结构。

●      计算机智能化将进一步发展,各种知识库及人工智能技术将进一步普及,人们将用自然语言和机器对话。

计算机从数值计算为主过渡到知识推理为主,从而使计算机进入知识处理阶段。

●      随着大规模集成电路的发展,不仅用多处理机技术来实现大型机系统功能,而且会出现计算机的动态结构,即所谓模块化计算机系统结构。

●      多媒体技术将有重大突破和发展,并在微处理机、计算机网络与通信等方面引起一次巨大变革。

1.3计算机的软件

计算机硬件是载体,软件是灵魂。

1.3.1软件的组成与分类

分类:

系统程序、应用程序

1.3.2软件的发展演变

手编程序(目的程序)→汇编程序→算法语言(高级语言)

高级语言与机器语言的转换:

编译系统、解释系统

操作系统、数据库

 

1.4计算机系统的层次结构

1.4.1多级组成的计算机系统

P16图1.6五个级别:

第一级微程序设计级、第二级是一般机器级、第三级是操作系统级、第四级是汇编语言级、第五级是高级语言级。

1.4.2软件与硬件的逻辑等价性

 

补充:

计算机的性能指标

•基本字长

•基本字长是指参与运算的数的基本位数,它标志着计算精度。

位数越多,精度越高,但硬件成本也越高,因为它决定着寄存器、运算部件、数据总线等的位数。

•主存容量

•主存储器是CPU可以直接访问的存储器,需要执行的程序与需要处理的数据就放在主存之中。

主存容量大则可以运行比较复杂的程序,并可存入大量信息,可利用更完善的软件支撑环境。

所以,计算机处理能力的大小在很大程度上取决于主存容量的大小。

•外存容量

外存容量一般是指计算机系统中联机运行的外存储器容量。

由于操作系统、编译程序及众多的软件资源往往存放在外存之中,需用时再调入主存运行。

在批处理、多道程序方式中,也常将各用户待执行的程序、数据以作业形式先放在外存中,再陆续调入主存运行。

所以,联机外存容量也是一项重要指标,一般以字节数表示。

•运算速度

同一台计算机,执行不同的运算所需时间可能不同,因而对运算速度的描述常采用不同方法。

常用的有CPU时钟频率、每秒平均执行指令数(ips)、单独注明时间等。

•所配置的外围设备及其性能指标

•外围设备配置也是影响整个系统性能的重要因素,所以在系统技术说明中常给出允许配置情况与实际配置情况。

•系统软件配置情况

•作为一种硬件系统,允许配置的系统软件原则上是可以不断扩充的,但实际购买的某个系统究竟已配置哪些软件,则表明它的当前功能。

第二章运算方法和运算器

 

本章摘要

·数值数据和非数值数据在计算机中的表示方法;

·定点数加、减、乘、除运算方法;

·浮点数加、减、乘、除运算方法;

·定点、浮点运算器的组成及工作原理。

 本章需掌握的主要内容:

1.掌握定点数和浮点数以及原码、反码、补码的表示方法;

2.掌握补码加减运算的方法,溢出的概念与检测方法,基本的二进制加法。

3.理解定点乘法运算和除法运算的工作原理;

4.理解ALU的功能、设计方法和工作原理;

5.掌握基本的浮点运算方法,了解浮点运算器的组成和原理;

6.理解内部总线的概念、分类及特点;

 

2.1数据与文字的表示方法

2.1.1数据格式

在选择计算机的数的表示方式时,应当全面考虑以下几个因素:

•要表示的数的类型(小数、整数、实数和复数):

决定表示方式

•可能遇到的数值范围:

确定存储、处理能力

•数值精确度:

处理能力相关

•数据存储和处理所需要的硬件代价:

造价高低

两种常用格式:

•定点格式:

定点格式容许的数值范围有限,但要求的处理硬件比较简单;

(1)定点纯小数

x0x1x2x3…xn-1xn

 

表示数的范围是0≤|x|≤1-2-n

(最小数、最大数、最接近0的正数、最接近0的负数)

x=0.00...0

x=1.00...0

x=0

正0和负0都是0

X=0.11...1

x=1-2-n  

最大

X=0.00...01

x=2-n 

最接近0的正数

X=1.00...01

 x=-2-n

最接近0的负数

X=1.11...1

 x=-(1-2-n )

最小

(2)定点纯整数

x0x1x2x3…xn-1xn

表示数的范围是0≤|x|≤2n-1

最小数、最大数、最接近0的正数、最接近0的负数呢

•浮点格式:

容许的数值范围很大,但要求的处理硬件比较复杂。

(1) 定点数表示法

定点指小数点的位置固定,为了处理方便,一般分为定点纯整数和纯小数。

(2) 浮点数表示法(小数点位置随阶码不同而浮动)

格式N=Re.m

 

 

浮点表示法,即小数点的位置是浮动的。

其思想来源于科学计数法。

  M:

尾数,是一个纯小数。

e:

比例因子的指数,称为浮点数的指数,是一个整数。

R:

比例因子的基数,对于二进制数值的机器是一个常数,一般规定R为2,8或16。

  一个机器浮点数由阶码和尾数及其符号位组成(尾数:

用定点小数表示,给出有效数字的位数决定了浮点数的表示精度;阶码:

用整数形式表示,指明小数点在数据中的位置,决定了浮点数的表示范围。

):

  为便于软件移植,按照IEEE754标准,32位浮点数和64位浮点数的标准格式为

  32位的浮点数中,S:

浮点数的符号位,1位,0表示正数,1表示负数。

M:

尾数,23位,用小数表示,小数点放在尾数域的最前面。

E:

阶码(8位),阶符采用隐含方式,即采用移码方式来表示正负指数。

移码方法对两个指数大小的比较和对阶操作都比较方便,因为阶码域值大者其指数值也大。

采用这种方式时,将浮点数的指数真值e变成阶码E时,应将指数e加上一个固定的偏移值127(01111111),即E=e+127.

  例1:

若浮点数x的754标准存储格式为(41360000)16,求其浮点数的十进制数值。

[解:

]

  将十六进制数展开后,可得二进制数格式为

  指数e=阶码-127=10000010-01111111=00000011=(3)10

  包括隐藏位1的尾数1.M=1.01101100000000000000000=1.011011

于是有

                  x=(-1)s×1.M×2e

                  =+(1.011011)×23=+1011.011=(11.375)10

例2:

将(20.59375)10转换成754标准的32位浮点数的二进制存储格式。

  [解:

]

首先分别将整数和分数部分转换成二进制数:

20.59375=10100.10011

  然后移动小数点,使其在第1,2位之间

           10100.10011=1.010010011×24     e=4

  于是得到:

S=0,   E=4+127=131,    M=010010011

  最后得到32位浮点数的二进制存储格式为:

01000001101001001100000000000000=(41A4C000)16

浮点数的规格化:

主要解决同一浮点数表示形式的不唯一性问题。

规定,否则尾数要进行左移或右移。

机器零的概念:

当一个浮点数的尾数为0,不论其阶码为何数,或当阶码值遇到比它能表示的最小值还小时,不论其尾数为何值,计算机把该浮点数看成零值,称为机器零。

3)十进制数串的表示方法

•字符串形式:

一个字节存放一个十进制的数位或符号位

•BCD(压缩):

一个字节存放两个十进制的数位

•编码方式

–有权码:

(8421码、2421码、5211码)

–无权码:

(余三码、格雷码)

•自定义数据表示

4) 自定义数据表示

标志符数据表示、描述符数据表示

区别:

    标志符与每个数据相连,二者合起来存放在一个存储单元,而描述符要和数据分开存放;

   描述符表示中,先访问描述符,后访问数据,至少增加一次访存;

   描述符是程序的一部分,而不是数据的一部分。

2.1.2数的机器码表示

•数的机器码表示

–真值和机器码:

真值(书写用)、机器码(机器内部使用)的概念

–原码:

优点:

简单易懂。

缺点:

加减法运算复杂。

–补码:

加减法运算方便,减法可以转换为加法.

为了区别一般书写表示的数和机器中这些编码表示的数,通常将前者称为真值,后者称为机器数或机器码。

1、原码表示法

•定点小数x0.x1x2…xn

x1>x≥0   0,正数

[x]原=符号

1-x=1+|x|0≥x>-1   1,负数

注:

有正0和负0之分

范围2-n-1~1-2-n

例:

x=+0.11001110

[x]原=0.11001110[-x]原=1.11001110

•定点整数x0x1x2…xn

x2n>x≥0   0,正数

[x]原=符号

2n–x=2n+|x| 0≥x>-2n   1,负数

注:

有正0和负0之分

范围1-2n~2n-1

例:

x=+11001110

[x]原=011001110[-x]原=111001110

2、补码:

我们先以钟表对时为例说明补码的概念。

假设现在的标准时间为4点正;而有一只表已经7点了,为了校准时间,可以采用两种方法:

一是将时针退7-4=3格;一是将时针向前拨12-3=9格。

这两种方法都能对准到4点,由此可以看出,减3和加9是等价的,就是说9是(-3)对12的补码,可以用数学公式表示

                 -3=+9(mod12)

  mod12的意思就是12模数,这个“模”表示被丢掉的数值。

上式在数学上称为同余式。

  上例中其所以7-3和7+9(mod12)等价,原因就是表指针超过12时,将12自动丢掉,最后得到16-12=4。

从这里可以得到一个启示,就是负数用补码表示时,可以把减法转化为加法。

这样,在计算机中实现起来就比较方便。

•定点小数x0.x1x2…xn

 

x1>x≥0   0,正数

[x]补=符号

2+x=2-|x|0≥x>-1  1,负数

注:

0的补码只有一种形式

范围2-n-1~1-2-n

例:

(1) x=-0.1011     (2)y=-0.01111

[x]补=10+x=10.0000-0.1011=1.0101

[y]补=10+y=10.00000-0.01111=1,10001

•定点整数x0x1x2…xn

x2n>x≥0   0,正数

[x]补=符号

2n+1+x=2n+1-|x| 0≥x>-2n 1,负数

注:

0的补码只有一种形式

范围-2n~2n-1

3、反码:

为计算补码方便而引入

计算公式:

小数公式2.11(P25),整数公式2.12(P25)

由反码求补码:

符号位置1,各位取反,末位加1。

4、移码:

用于阶码的表示,两个移码容易比较大小,便于对阶。

定义:

公式2.14。

即将数值向X轴正方向平移2n

–例-1011111原码为11011111

–补码为10100001反码为10100000

–移码为00100001

–特点:

移码和补码尾数相同,符号位相反

–例3和例4

小结:

上面的数据四种机器表示法中,移码表示法主要用于表示浮点数的阶码。

由于补码表示对加减法运算十分方便,因此目前机器中广泛采用补码表示法。

在这类机器中,数用补码表示,补码存储,补码运算。

也有些机器,数用原码进行存储和传送,运算时改用补码。

还有些机器在做加减法时用补码运算,在做乘除法时用原码运算。

 

2.1.3字符与字符串的表示方式

ASCII码

2.1.4汉字的表示方式

1) 输入码:

用于汉字输入

2) 内码:

用于汉字的存储

3) 字模码:

用于汉字的显示

2.1.5校验码

奇、偶校验码

  最简单且应用广泛的检错码是采用一位校验位的奇校验或偶校验。

设x=(x0x1…xn-1)是一个n位字,则奇校验位

定义为

=x0⊕x1⊕…⊕xn-1

(2.15)

式中⊕代表按位加,表明只有当x中包含有奇数个1时,才使

=1,即

=0。

 

 同理,偶校验位C定义为

C=x0⊕x1⊕…⊕xn-1

(2.16)

即x中包含偶数个1时,才使C=0。

  [例7]已知下表中左面一栏有5个字节的数据。

请分别用奇校验和偶校验进行编码,填在中间一栏和右面一栏。

见P30

 

补充内容

一、常用逻辑门

二、全加器

三、编码器和译码器

四、触发器

五、寄存器

2.2定点加法、减法运算

一、补码加法

加法公式:

[x+y]补=[x]补+[y]补(mod2)(2.17)

证明:

(P31)假定X、Y均为定点小数,且|x|<1,|y|<1,|x+y|<1

(1)若x>0,y>0则x+y>0

[x]补+[y]补=x+y=[x+y]补(正数的原、反、补码是相同的)

(2)x>0,y<0

[x]补=x[y]补=2+y

[x]补+[y]补=x+2+y=2+(x+y)

①当x+y>0

2+(x+y)会产生进位,进位位丢掉

2+(x+y)=x+y=[x+y]补

②当x+y<0

2+(x+y)=[x+y]补

故[x]补+[y]补=[x+y]补

(3)x<0,y>0

(略)同

(2)

(4)x<0,y<0

[x]补=2+x[y]补=2+y

[x]补+[y]补=2+x+2+y=2+(2+x+y)

∵-1

则-1+2<2+x+y<0+2

1<2+x+y<2

∴2+(2+x+y)产生进位、丢掉,2+(2+x+y)=(2+x+y)

又∵x+y<0

∴(2+x+y)=2+(x+y)=[x+y]补

注:

补码加法的特点:

(1)符号位要作为数的一部分参与运算

(2)要在模2的意义下相加,即超过2的进位要丢掉。

例1:

x=-0.1011,y=0.0111

[x]补=1.0101[y]补=0.0111

[x+y]补=[x]补+[y]补=1.0101+0.0111=1.1100

x+y=-0.0100

例2:

x=+0.11011,y=-0.11111

[x]补=0.11011[y]补=1.00001[-y]补=0.11111

[x-y]补=[x]补+[-y]补=1.11010

二、补码减法

加法公式:

[x-y]补=[x]补-[y]补=[x]补+[-y]补(mod2)(2.18)

证明:

P32(略)只要证明[y]补+[-y]补=0

从[y]补求[-y]补,表达式为:

[-y]补=乛[y]补+2-n

其中乛表示对[y]补作包括符号位在内的求反操作

例10(略)P33

例11(略)P33

三、溢出概念与检测方法

1.溢出概念:

溢出:

在定点小数机器中,数的表示范围为|x|<1。

在运算过程中如果出现大于1的情况,称为溢出。

上溢:

两个正数相加,结果大于机器所能表示的最大正数

下溢:

两个负数相加,结果小于机器所能表示的最小负数

2.溢出的检测方法:

(1)双符号位(变形补码或模4补码):

变形补码定义:

x

X=

4+x0>x>-2

采用变形补码后:

当1>x≥0两个符号位都是0。

如00.1010

当0>x>-1两个符号位都是1。

如11.1010

对变形补码其特点:

①符号位参与运算

②在模4下相加运算,进位4丢掉

结论:

①运算结果的两符号位相异时,表示溢出。

②不论溢出与否,最高符号位始终指示正确的符号。

例10(略)P34

例11(略)P34

 

(2)单符号位:

(1)当最高有效位产生进位而符号位无进位时,产生上溢出。

(2)当最高有效位无进位而符号位产生进位时,产生下溢出。

溢出表达式为:

V=Cf⊕C0Cf---符号位产生的进位,

C0----最高有效位产生的进位)

•CfC0

•00正确(正数)

•01上溢

•10下溢

•11正确(负数)

四、基本的二进制加法/减法器

输入

输出

AiBi

SiCi

00

00

01

10

10

10

11

01

•基本的加法和减法器一位半加器真值表

–半加器(不考虑进位)

–Hi=Ai⊕Bi

电路图略

 

–全加器(考虑低位进位Ci-1和向高位的进位Ci)

真值表见P35表2.2

 

进位处理方式:

串行进位(行波进位)、并行进位

二进制加法/减法器图2.2(P31)

五、十进制加法器

十进制加法/减法器图2.3(P36)

•校正方法

–当Xi+Yi+Ci<10时,Si=S

–当Xi+Yi+Ci>=10时,Si=S+6

–校正因子生成方法

例如:

       A=0101    B=0111

       A+B=0101+0111=1100(结果不是BCD码)

       1100+0110=10010(1为进位,构成12的BCD码,所以正确)

2.3定点乘法运算

一、原码并行乘法

1.定点原码乘法原理

一、

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1