<span>计算机组成原理</span>

第一章:计算机系统概论

1.1 计算机分类:

信息的形式及处理方式分:模拟电子计算机和数字电子计算机

用途分:通用计算机和专用计算机

规模分:超级计算机、大型机、服务器、工作站 、微型机、单片机等

1.2计算机发展简史

1.五代变化:电子管计算机、晶体管计算机、中小规模集成电路计算机(小型计算机)、大规模和超大规模集成计算机(微型计算机)、巨大规模集成电路计算机(单片机)

2.半导体存储器发展:

仙童半导体公司生产了第一个较大容量半导体存储器,后面每代的容量都增大四倍

3.微处理器的发展

4.计算机的性能指标:

总线宽度:一般指CPU中运算器与存储器之间进行互连的内部总线二进制位数。

存储器带宽:存储器的速度指标,单位时间内从存储器读出的二进制数信息量,一般用字节数/秒表示。

1.3计算机的硬件

1.冯·诺依曼计算机—存储程序概念

2. 数字计算机的硬件组成:

中央处理器(CPU)   主存储器     总线     适配器     外围设备

指令:

总线的分类:根据总线上传送的信息可以分为数据总线、地址总线、控制总线

1.4计算机系统的层次结构

1.多级计算机系统

第二章:运算方法和运算器

2.1数据与文字的表示方法

一、数据格式

1.定点表示法

机器中所有数据的小数点位置固定,且位置是隐含的,不需要占一个位。

把小数点固定在有效数位的最前面或末尾,故,形成了两类定点数:定点小数(纯小数)、定点整数(纯整数)。

若x表示的是定点小数(纯小数),则小数点位于x0和x1之间; 若x表示的是定点整数(纯整数),则小数点位于xn之后。

2.浮点表示法

(1)浮点格式:

格式1:

由阶码(指数)、尾数及其符号位组成。

格式2:

按照 IEEE754 的标准,32位浮点数标准格式为 :

S:浮点数的符号位,占1 位,常用0表示正数,1表示负数。

M:尾数的数值部分,占23位,用小数表示,小数点放在尾数域的最前面。

E:阶码,8 位,阶符用该字段的最高位表示。

例子: 二进制数 x=1011.0110=0.10110110×24

用格式1表示x: 设m=6,n=8,符号位“0”表示正,“1”表示负

用格式2表示:

(2)浮点数的规格化表示:

1.一般意义下的规格化:

2.IEEE754标准中的规格化浮点表示

例子:

二、机器码的表示

1.原码表示法:

(1)定点整数:

例如,x=+1001,则[x]原=01001 ,x=-1001,则[x]原=11001

(2)定点小数

2.补码表示法

(1)定点小数的补码

例如,x=+0.1001,则[x]补=0.1001    x=-0.1001,则[x]补=1.0111

(2)定点整数的补码

若定点整数的补码形式为XnXn-1Xn-2…X0,则补码表示的范围是:

正数:

负数:

3.反码表示法

(1)定点小数的反码

(2)定点整数的反码

4.移码的表示法

移码通常用于表示浮点数的阶码,因此需掌握定点整数的移码表示方法

移码就是将补码的符号位取反就好:

重点:机器码的规格化形式的相关规定(熟记)

重点例题:1.求规格化范围

2.求754规格化范围

三、字符与字符串的表示方法

1.字符的表示方法:ASCII码,7位

2.字符串的存放:向量法(连续存放)、串表法(非连续存放)

四、汉字的表示方法

1.汉字的输入编码:数字编码(常用国标区位码)、拼音码、字形编码

2.汉字内码:占两个字节,最高位都为1

3.汉字字模码:只能用来构成汉字库,而不能用于机内存储,是汉字的输出形式。

2.2定点加法、减法运算

一、补码加法:

①符号位要作为数的一部分一起参加运算;②要在模2n+1 (或模2)的意义下相加,即符号位产生的进位要丢掉。

二、补码减法:

公式:[x-y]补= [x]补+[-y]补

由[y]补  求[-y]补  的法则: 各位都取反(包括符号位),然后末位+1

三、溢出概念与检测方法:

溢出:在定点整数机器中,数的表示范围为|x|<(2n-1)在运算过程中若出现大于(2n-1)的现象,则称为“溢出”。在定点机中,正常情况下溢出是不允许的

检测方法:1.双符号位法:“01”表示上溢, “10”表示下溢。最高符号位始终表示结果的正确符号。

2.单符号位法:溢出检测逻辑表达式为V=Cf⊕Co,其中Cf为符号位产生的进位,Co为最高有效位产生的进位, V=1表示发生溢出。

四、定点加减运算的逻辑实现:

1.一位全加器估算时间延迟:

考虑溢出检测,那么n位串行进位加/减法器的延迟时间ta为:ta=n·2T+9T=(2n+9)T

当不考虑溢出检测时,有:ta=(n-1)·2T+9T

2.3定点乘法运算

一、原码乘法

符号位单独计算。

(1)串行实现:原码一位乘法算法

(2)原码并行乘法:

二、补码乘法

(1)间接补码并行乘法

1.原理: 特别需注意:负数的“原码→补码”和“补码→原码”的过程相同:数值位按位取反末位加1。

2.逻辑框图:

3.算前(后)求补器的功能和实现电路:

间接补码并行乘法的例子:

(2)直接补码并行乘法

2.4定点除法运算

一、(串行)恢复余数法:

二、不恢复余数法(加减交替法)

三、(并行)不恢复余数的阵列除法器

2.5定点运算器的组成

一、逻辑运算

分:逻辑非、逻辑加(逻辑或)、逻辑乘(逻辑与)、逻辑异(异或)四种基本运算

二、多功能算术/逻辑运算单元ALU

1.先行进位算法

(1)一位全加器:                                                                                                         (2)  由一位全加器构成的串行进位的四位加法器

Cn+1~ Cn+4是同时算出的,故比串行进位的全加器速度要快。依此先行进位公式,可设计出四位并行加法器。对全加器电路再增加一函数发生器电路,即             可实现多种算术运算。

2.多种算术运算的实现:

可以证明:XiYi=Yi, Xi+Yi=Xi,则Cn+1=Y0+X0Cn,······Cn+4=Y3+ Y2X3 +Y1X2 X3 +Y0X1X2 X3 +X0X1X2X3Cn

=G+PCn G= Y3+ Y2X3 +Y1X2 X3 +Y0X1X2 X3 , P=X0X1X2X3

3. 算术/逻辑运算单元74181ALU

三、内部总线

内部总线:CPU内各部分的连线,分单向、双向总线

四、定点运算器的基本结构

运算器包括ALU、阵列乘除器、寄存器、多路开关、三态缓冲器、数据总线等逻辑部件。

1.单总线结构的运算器:双操作数分时经总线进入锁存器A和B,结果也通过单总线送回

2.双总线结构的运算器:两操作数通过各自的总线送加法器运算,结果通过   其中一总线送回

3.三总线结构的运算器:两操作数和操作结果通过各自的总线传送

2.6浮点运算方法和浮点运算器
一、浮点加减法运算

1.对(补码)非规格化数的规格化处理:

2.浮点加减法运算过程:

运算步骤:1对阶  2尾数求和  3规格化

小阶向大阶看齐:尾数右移,损失的是最小位

舍入处理:在对阶或者是右规的时候尾数要右移,舍弃低位,有两种舍入处理方法:“0舍1入法”,舍入的部分最高位为1的话就进一个1,最高位为0的话就直接舍去;“恒置1法”,只要位数被移掉,就在尾数末尾加“1”。

溢出处理:浮点数的溢出是按照阶码是否溢出来判断的!!!

数的表示:一般阶码E采用移码或补码表示,而尾数M采用补码表示。

二、浮点乘除法运算

1.浮点数的阶码运算:

2.对尾数运算结果(Mx× My)的处理:

运算步骤:1.0操作数检查 2.阶码加/减操作 3.尾数乘/除操作 4.结果规格化及舍入处理

三、浮点运算流水线:

各子过程段之间须设置高速缓冲存储器







































全部评论

相关推荐

xwqlikepsl:感觉很厉害啊,慢慢找
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务