算机组成原理运算方法和运算器.ppt
回 顾,2,1.什么是存储程序的概念?冯.诺依曼计算 机的基本思想是什么?2.计算机系统的硬件由哪些基本功能部件组 成?主要功能是什么?3.为什么要讨论计算机系统的层次结构?4.存储单元、地址、存储容量,回 顾,2,输入设备,输出设备,入出接口和总线,外存设备,主存储器,高速缓存,控 制 器,运 算 器,计算机硬件系统组成,数据与文字在计算机中的表示方法定点加法、减法运算定点乘法运算定点除法运算定点运算器的组成浮点运算方法和浮点运算器,章 运算方法和运算器,2,主 要 内 容,2.1 数据与文字在计算机中的的表 示方法,进位计数制:凡是按进位方式计数的数值就 叫做进位计数制。,基数:该进位制中允许选用的基本数码的个数。权:与数码位置有关的常数,简称“权”。,进位计数制的相互转换 十进制 二进制 二进制 十进制,数值数据的表示三要素:进位计数制、小数点、符号。,数据格式,定点数,浮点数,定点整数:0X2n1,定点小数:0X12n,符号位,符号位,浮点数:表示形式:N=RE M E-阶码 M-尾数 R-与所采用的进制有关,阶符,数符,阶码,尾数,常用补码或移码表示,常用补码或原码表示,表示范围:,假如阶码和尾数均为原码表示:,32位浮点数:数符1位、阶码8位、尾数23位,32位定点整数:,浮点数的规格化表示:M 0.5,原码,数的机器码表示,纯整数X原=,纯小数X原=,X,2n x 0,2n x=2n+|x|,0 x-2n,特点:表示简单易懂,但运算复杂,另外还存在 零表示的不唯一性。,数的机器码表示,反码,特点:表示简单易懂,但运算复杂;另外还存在 零表示的不唯一性。,数的机器码表示,补码,特点:符号位是通过运算得到的,可直接参与运算;另外零的表示具有唯一性。,移码,定义:假如X为n+1位(包括一位符号位)则:X移=2n+x,2n-1 x-2n 其中:x为真值 2n为符号位的位权 结论:符号位为 0 表示负值 符号位为 1 表示正值举例:n=7X移=128+X 其中-128x 127,比较:1011补 1011 移1011 补 1011 移,128,255,x,0,127,-128,0,X移,意义:,课堂练习:设机器字长为16位,其中4位用来表示阶码,12位用来表示尾数,阶符和尾符各占一位。求该浮点数用补码表示时的最大值、最小值和最小绝对值。,补充:IEEE754标准中浮点数的定义,1985年IEEE提出了IEEE754标准。该标准规定基数为2,阶码E用移码表示,尾数M用原码表示,根据原码的规格化方法,最高数字位总是1,该标准将这个1缺省存储,使得尾数表示范围比实际存储多一位。以单精度格式为例:书,真值(1)S 2E127(1.M)举例:按IEEE754标准写出176.0652的真值表达 式和存储格式。,作业:,某浮点格式如下表所示,阶码部分连阶符共m+1位,补码表示,以2为底;尾数共n+1位,含一位数符,补码表示,规格化。,表示范围:?分辨率:?,非数值数据的表示(略),校验码 思想:让写入的信息符合某种约定的规律,在读出时检验其读出信息是否仍符合这一约定规律。“冗余校验”奇偶校验:根据代码字的奇偶性质进行编码。奇偶校验电路结构图如下:,并行奇偶统计电路,补码加法补码加法公式:X+Y补=X补+Y补 证明:特点*符号位参加运算;*如果是小数,则模2意义相加;*如果是整数,则模 2n+1 意义相加。,2.2 定点加法/减法运算,-Y补=Y补+2-n/20举例:,问题的提出:-Y补=?,补码减法补码加法公式:X-Y补=X补+-Y补 特点:*将减法转化为加法*符号位参加运算,2.2 定点加法/减法运算,定点小数,定点小数,溢出概念与检测方法:当两个数相加或相减的运算结果超出了机器本身能够表示的数据范围,这时就会产生溢出现象。上溢 下溢,2.2 定点加法/减法运算,基本的二进制加法/减法器(1)一位全加器,2.2 定点加法/减法运算,(2)N位行波进位加法/减法器 结构:由N个一位全加器组成 工作原理:当 M=0 加法 当 M=1 减法,(3)十进制加法器 一位BCD加法器的功能及原理:完成两个一位十进制数的加法,十进制加法器的结构:由N个一位BCD加法器单元构成,可完成N位十进制数的加法运算。举例:,积 Z原=(Xf Yf)(0.xn-1 x1 x0)(0.yn-1 y1 y0)如下图:,2.3.1 原码并行乘法1、人工算法与机器算法的同异性 原码乘法规则:被乘数 X原=Xf.Xn-1 X1 X0 乘数 Y原=Yf.Yn-1 Y1 Y0,2.3 定点乘法运算,2、无符号的高速阵列乘法器例如:,实现:,5*5位无符号的阵列乘法器逻辑电路图,特点:空间上并行;时间上相对并行。,M*N 位无符号的阵列乘法器逻辑框图,2.3.2 补码并行乘法1、补码与真值的关系:an-1 an-2 a0,N=,2、一般化的全加器(见下图),3、直接补码阵列乘法器,4、举例,2.4 定点除法运算原码除法算法原理 1、恢复余数法 2、加法交替法(不恢复余数法)2.4.2 并行除法器 1、可控制加法/减法(CAS)单元 2、不恢复余数的阵列除法器 举例:作业:P70 78,可控制加法/减法(CAS)单元,P=0 加P=1减,借位输入,借位输出(商输出),余数输出,除数右移输出,返回,不恢复余数的阵列除法器的逻辑结构图,0,反馈线:,返回,数据与文字的表示方法 定点加法 X+Y补=X补+Y补 定点减法 X-Y补=X补+-Y补 定点乘法运算Z原=(Xf Yf)(0.xn-1 x1 x0)(0.yn-1 y1 y0)定点除法运算Z原=(Xf Yf)(0.xn-1 x1 x0)/(0.yn-1 y1 y0),算术运算方法的总结,定点运算器的组成,2.5.1 逻辑运算 定义 逻辑数、逻辑运算,类型 逻辑非、逻辑加、逻辑乘、逻辑异,应用举例,2.5,2.5.2 多功能算术/逻辑运算单元ALU ALU定义:是组成运算器的核心部件。它不仅具有多 种算术运算和逻辑运算的功能,而且还具有 先行进位逻辑。以SN74181为例:SN74181是一个带有输入函数发生器 的4位并行加法器,它能实现16种算术 运算和16种逻辑运算。1.外部特性,工作方式:正逻辑负逻辑 控制方式:M=0 算术运算M=1 逻辑运算,芯片管脚介绍:控制端:S0、S1、S2、S3、M 输入端:A0、B0、A1、B1、A2、B2、A3、B3 进位输入端:Cn 输出端:F0、F1、F2、F3 进位输出端:Cn+4 比较输出端:A=B 进位发生输出端:G 进位传递输出端:P,ALU功能特征:算术运算、逻辑运算、以及先行进位逻辑。,2.设计思想(以4位SN74181为例),进位产生函数=G进位传递函数=P,C n+1=Y0+X0 CnC n+2=Y1+Y0 X1+X0 X1 CnC n+3=Y2+Y1 X2+Y0 X1 X2+X0 X1 X2 CnC n+4=Y3+Y2 Y3+Y1 X2 X3+Y0 X1 X2 X3+X0 X1 X2 X3 Cn,Y3 X3 Y2 X2 Y1 X1 Y0 X0 Cn,成组先行进位逻辑电路,ALU的组合逻辑电路74LS181,3.优缺点-优点:减少进位延迟时间,实现高速运算。-缺点:以增加硬件电路为代价。,4.硬件实现(练习),16位行波进位ALU16位并行ALU64位组内并行、组间串行的ALU64位全并行的ALU,?讨论:如何利用多片SN74181和SN74182组成下列ALU:,成组先行进位逻辑电路-74LS182,Cn+4 Cn,Cn+4 Cn,Cn+4 Cn,Cn+4 Cn,Cin,Cin,SN74182,Cout,P3 G3 Cn+12 P2 G2 Cn+8 P1 G1 Cn+4 P0 G0,Cn+4 Cn,Cn+4 Cn,Cn+4 Cn,Cn+4 Cn,Cin,Cout,2.5.3 内部总线1.总线的概念 总线就是一组能为多个部件、分时共享的公共信息通路。2.总线的类型,2.5.4 定点运算器内部总线的基本结构,运算器的基本组成:ALU、阵列乘除法器、寄存器、多路开关、三态缓冲器、和数据总线等逻辑部件。,2.6.1 浮点加法和减法运算 运算规则:设有两个浮点数 X=2Ex Mx Y=2Ey MyEx Ey:X Y=2Ex Mx 2Ey My=(Mx 2Ex-Ey My)2Ey,2.6 浮点运算方法和运算器,结果的尾数,结果的阶码,2.6 浮点运算方法和运算器,基本步骤:,零操作数检查对阶操作 尾数右移尾数的求和运算结果的规格化处理 左规 和 右规舍入操作检查阶码是否溢出,(结合举例(P55),2.6 浮点运算方法和运算器,2.6.2 浮点乘法运算和除法运算,运算规则:设有两个浮点数(参看P57例题)X=2Ex Mx Y=2Ey My X Y=2Ex+Ey(Mx My)X Y=2Ex-Ey(Mx My),特点:无需进行小数点对齐!,2.6 浮点运算方法和运算器,2.6.3 浮点运算流水线,特征:在计算机上实现 时间并行性 线性流水线的硬件基本结构图,浮点加减运算流水线,浮点运算的流水时空图,C,N,A,S,XiYi,2.6 浮点运算方法和运算器,2.6.3 浮点运算流水线,流水线浮点加法器,小测验,1、冯诺一曼机工作方式的基本特点是什么?2、一个阶3位,尾数6位(均不含符号位)的浮点规格化数所对应的十进制真值表示范围是多少?3、74181芯片有几条控制线?74182是一种具有什么功能的芯片?,Ci+1,一位全加器,返回,符号位,行波进位的补码加法/减法器,返回,一位BCD加法器的硬件组成,返回,十进制加法器的硬件组成,返回,返回,