计算机组成和结构课件第二章.ppt

上传人(卖家):三亚风情 文档编号:3481345 上传时间:2022-09-05 格式:PPT 页数:102 大小:328.55KB
下载 相关 举报
计算机组成和结构课件第二章.ppt_第1页
第1页 / 共102页
计算机组成和结构课件第二章.ppt_第2页
第2页 / 共102页
计算机组成和结构课件第二章.ppt_第3页
第3页 / 共102页
计算机组成和结构课件第二章.ppt_第4页
第4页 / 共102页
计算机组成和结构课件第二章.ppt_第5页
第5页 / 共102页
点击查看更多>>
资源描述

1、Department of Computer覃 颖 Tel:6392292Email:qinyingctgu.edu2.1 数据与文字的表示方法 2.1.1 数的机器码表示数的机器码表示o在计算机中参与运算的数有两大类:在计算机中参与运算的数有两大类:无符号数无符号数和和有符号数有符号数。n无符号数无符号数:所谓无符号数,即没有符号的数,数中:所谓无符号数,即没有符号的数,数中的每一位均是有效数值。的每一位均是有效数值。n有符号数有符号数:将符号数字化,用:将符号数字化,用“0”表示表示“正正”,用,用“1”表示表示“负负”,并且规定放在有效数字的前面,并且规定放在有效数字的前面,这就构成有符

2、号数。这就构成有符号数。2.1 数据与文字的表示方法 2.1.1 数的机器码表示数的机器码表示o机器数与真值机器数与真值:把符号:把符号“数字化数字化”的数叫的数叫机器数机器数,而把带而把带“+”或或“-”符号的数叫符号的数叫真值真值。机器数实质。机器数实质是符号和数值形成的一种编码表示,常见的有是符号和数值形成的一种编码表示,常见的有原原码码、反码反码、补码补码和和移码移码等表示法。等表示法。2.1 数据与文字的表示方法 2.1.1 数的机器码表示数的机器码表示o原码表示法原码表示法:整数原码的定义:整数原码的定义:x原原=0,x 2n x 0 2n x 0 x -2n 小数原码的定义:小数

3、原码的定义:x原原=x 1 x 0 1x 0 x -1 式中式中x为真值,为真值,n为整数的位数为整数的位数2.1 数据与文字的表示方法 2.1.1 数的机器码表示数的机器码表示o原码表示法原码表示法:原码表示是一种带符号的绝对值表:原码表示是一种带符号的绝对值表示方法。示方法。例如,例如,+0.1001,则,则原原0.1001 -0.1001,则,则原原1.1001o采用原码表示法简单易懂,但它的最大缺点是加采用原码表示法简单易懂,但它的最大缺点是加法运算复杂。法运算复杂。2.1 数据与文字的表示方法 2.1.1 数的机器码表示数的机器码表示o补码表示法补码表示法:整数补码的定义:整数补码的

4、定义:x补补=0,x 2n x 0 2n+1+x 0 x -2n (mod 2n+1)小数补码的定义:小数补码的定义:x补补=x 1 x 0 2+x 0 x -1 (mod 2)式中式中x为真值,为真值,n为整数的位数为整数的位数2.1 数据与文字的表示方法 2.1.1 数的机器码表示数的机器码表示o补码表示法补码表示法:例如,例如,+0.1011,则则补补0.1011 -0.1011,则则补补10+10.0000-0.1011 1.0101o采用补码表示法进行减法运算就比原码方便得多采用补码表示法进行减法运算就比原码方便得多了。因为不论数是正还是负了。因为不论数是正还是负,机器总是做加法,机

5、器总是做加法,减法运算可变为加法运算。减法运算可变为加法运算。2.1 数据与文字的表示方法 2.1.1 数的机器码表示数的机器码表示o反码表示法反码表示法:整数反码的定义:整数反码的定义:x反反=0,x 2n x 0 (2n+1-1)+x 0 x -2n (mod 2n+1-1)小数反码的定义:小数反码的定义:x反反=x 1 x 0 (2-2-n)+x 0 x -1 (mod 2-2-n)式中式中x为真值,为真值,n为整数的位数为整数的位数2.1 数据与文字的表示方法 2.1.1 数的机器码表示数的机器码表示o反码表示法反码表示法:所谓反码所谓反码,就是二进制的各位数码就是二进制的各位数码0变

6、为变为1,1变为变为0。例如,例如,+0.1011,则则反反0.1011 -0.1011,则则反反10-0.0001+1.1111-0.1011 1.0100o不难证明:不难证明:补补反反2-n 这个公式告诉我们,若要一个负数变补码这个公式告诉我们,若要一个负数变补码,其方其方法是符号位置法是符号位置1,其余各位,其余各位0变变1,1变变0,然后在,然后在最末位最末位(2-n)上加上加1。2.1 数据与文字的表示方法 2.1.1 数的机器码表示数的机器码表示o移码表示法移码表示法:移码通常用于表示定点整数。移码通常用于表示定点整数。整数移码的定义:整数移码的定义:x移移=2n+x 2n x -

7、2n 式中式中x为真值,为真值,n为整数的位数为整数的位数2.1 数据与文字的表示方法 2.1.1 数的机器码表示数的机器码表示o移码表示法移码表示法:例如,例如,+10101,则则移移25+10101 1,10101 -10101,则则移移25+100000-10101 0,01011o显然显然,移码中符号位表示的规律与原码、补码、移码中符号位表示的规律与原码、补码、反码相反。反码相反。二进制代二进制代码码无符号数对无符号数对应的真值应的真值原码对应原码对应的真值的真值补码对应补码对应的真值的真值反码对应反码对应的真值的真值移码对应移码对应的真值的真值00000000000000010000

8、00100111111001111111100000001000000110000010111111011111111011111111012126127128129130253254255+0+1+2+126+127-0-1-2-125-126-127+0+1+2+126+127-128-127-126-3-2-1+0+1+2+126+127-127-126-125-2-1-0-128-127-126-2-10+1+2+125+126+1272.1 数据与文字的表示方法 2.1.2 数据格式数据格式 o在选择计算机的数的表示方式时,需要考虑以下在选择计算机的数的表示方式时,需要考虑以下几个因

9、素:(几个因素:(1)要表示的数的类型(小数、整)要表示的数的类型(小数、整数、实数和复数);(数、实数和复数);(2)可能遇到的数值范围;)可能遇到的数值范围;(3)熟知精确度;()熟知精确度;(4)数据存储和处理所需要)数据存储和处理所需要的硬件代价。的硬件代价。2.1 数据与文字的表示方法 2.1.2 数据格式数据格式 o计算机中常用的数据表示格式有两种,一是计算机中常用的数据表示格式有两种,一是定点定点格式格式,二是,二是浮点格式浮点格式。一般来说,定点格式容许。一般来说,定点格式容许的数值范围有限,但要求的处理硬件比较简单。的数值范围有限,但要求的处理硬件比较简单。而浮点格式容许的数

10、值范围很大,但要求的处理而浮点格式容许的数值范围很大,但要求的处理硬件比较复杂。硬件比较复杂。2.1 数据与文字的表示方法 2.1.2 数据格式数据格式 o定点数的表示方法定点数的表示方法:所谓定点格式,即约定机器:所谓定点格式,即约定机器中所有数据的小数点位置是固定不变的。中所有数据的小数点位置是固定不变的。有两种有两种格式:定点整数和定点小数。格式:定点整数和定点小数。o定点整数定点整数:小数点位于数值位之后,机器内的数:小数点位于数值位之后,机器内的数为为纯整数纯整数。o定点小数定点小数:小数点位于数符和第一数值位之间,:小数点位于数符和第一数值位之间,机器内的数为机器内的数为纯小数纯小

11、数。SfS1S2Sn数符数符数值部分数值部分2.1 数据与文字的表示方法 2.1.2 数据格式数据格式 o浮点数的表示方法浮点数的表示方法:通常,浮点数表示为通常,浮点数表示为N=M re M为为尾数尾数,e为为阶码阶码,r是是基数基数(在计算机中,可(在计算机中,可取取2、4、8或或16等)。为提高数据精度和便于浮等)。为提高数据精度和便于浮点数的比较,计算机中规定浮点数的尾数用纯小点数的比较,计算机中规定浮点数的尾数用纯小数形式,并将尾数最高位为数形式,并将尾数最高位为1的浮点数称作的浮点数称作规格规格化数化数。2.1 数据与文字的表示方法 2.1.2 数据格式数据格式 o浮点数的表示方法

12、浮点数的表示方法:在早期计算机中,一个机器:在早期计算机中,一个机器浮点数由阶码和尾数及其符号位组成:浮点数由阶码和尾数及其符号位组成:2.1 数据与文字的表示方法 2.1.2 数据格式数据格式 o浮点数的表示方法浮点数的表示方法:按照:按照 IEEE754 的标准,的标准,32位浮点数和位浮点数和64位浮点数的标准格式为:位浮点数的标准格式为:o:浮点数的符号位:浮点数的符号位;:阶码,采用移码方阶码,采用移码方式(好处);式(好处);:尾数,小数点放在尾数域的最:尾数,小数点放在尾数域的最前面,尾数域所表示的值是前面,尾数域所表示的值是1.M(为什么)(为什么)。2.1 数据与文字的表示方

13、法 2.1.2 数据格式数据格式 o十进制数串的表示方法:十进制数串的表示方法:大多数通用性较强的计大多数通用性较强的计算机都能直接处理十进制形式表示的数据。十进算机都能直接处理十进制形式表示的数据。十进制数串在计算机内主要有两种表示形式:制数串在计算机内主要有两种表示形式:n字符串形式字符串形式 n压缩的十进制数串形式压缩的十进制数串形式 2.1 数据与文字的表示方法 2.1.2 数据格式数据格式 o十进制数串的表示方法十进制数串的表示方法字符串形式字符串形式:即一即一个字节存放一个十进制的数位或符号位。在主存个字节存放一个十进制的数位或符号位。在主存中,这样的一个十进制数占用连续的多个字节

14、,中,这样的一个十进制数占用连续的多个字节,故为了指明这样一个数,需要给出该数在主存中故为了指明这样一个数,需要给出该数在主存中的起始地址和位数的起始地址和位数(串的长度串的长度)。这种方式表示的。这种方式表示的十进制字符串主要用在非数值计算的应用领域中。十进制字符串主要用在非数值计算的应用领域中。2.1 数据与文字的表示方法 2.1.2 数据格式数据格式 o十进制数串的表示方法十进制数串的表示方法压缩的十进制数串形压缩的十进制数串形式式:即一个字节存放两个十进制的数位。它比即一个字节存放两个十进制的数位。它比前一种形式节省存储空间,又便于直接完成十进前一种形式节省存储空间,又便于直接完成十进

15、制数的算术运算,是广泛采用的较为理想的方法。制数的算术运算,是广泛采用的较为理想的方法。o与第一种表示形式类似,要指明一个压缩的十进与第一种表示形式类似,要指明一个压缩的十进制数串,也得给出它在主存中的首地址和数字位制数串,也得给出它在主存中的首地址和数字位个数个数(不含符号位不含符号位),又称,又称位长位长,位长为,位长为0的数其的数其值为值为0。十进制数串表示法的优点是位长可变,。十进制数串表示法的优点是位长可变,许多机器中规定该长度从许多机器中规定该长度从0到到31,有的甚至更长。,有的甚至更长。2.1 数据与文字的表示方法 2.1.3 字符与字符串的表示方法字符与字符串的表示方法 o现

16、代计算机不仅处理数值领域的问题,而且处理现代计算机不仅处理数值领域的问题,而且处理大量非数值领域的问题。这样一来,必然要引入大量非数值领域的问题。这样一来,必然要引入文字、字母以及某些专用符号,以便表示文字语文字、字母以及某些专用符号,以便表示文字语言、逻辑语言等信息。例如人机交换信息时使用言、逻辑语言等信息。例如人机交换信息时使用英文字母、标点符号、十进制数以及诸如英文字母、标点符号、十进制数以及诸如$,%,+等符号。然而数字计算机只能处理二进制数据,等符号。然而数字计算机只能处理二进制数据,因此,上述信息应用到计算机中时,都必须编写因此,上述信息应用到计算机中时,都必须编写成二进制各式的代

17、码,也就是字符信息用数据表成二进制各式的代码,也就是字符信息用数据表示,成为符号数据。示,成为符号数据。2.1 数据与文字的表示方法 2.1.3 字符与字符串的表示方法字符与字符串的表示方法 o目前国际上普遍采用的字符系统是目前国际上普遍采用的字符系统是ASCII码码(美国美国国家信息交换标准字符码国家信息交换标准字符码),ASCII码规定码规定8个二个二进制位的最高一位为进制位的最高一位为0,余下的,余下的7位可以给出位可以给出128个编码,表示个编码,表示128个不同的字符。个不同的字符。o字符串是指连续的一串字符,通常方式下,它们字符串是指连续的一串字符,通常方式下,它们占用主存中连续的

18、多个字节,每个字节存一个字占用主存中连续的多个字节,每个字节存一个字符。当主存字由符。当主存字由2个或个或4个字节组成时,在同一个个字节组成时,在同一个主存字中,既可按从低位字节向高位字节的顺序主存字中,既可按从低位字节向高位字节的顺序存放字符串的内容,也可按从高位字节向低位字存放字符串的内容,也可按从高位字节向低位字节的次序顺序存放字符串的内容。这两种存放方节的次序顺序存放字符串的内容。这两种存放方式都是常用方式,不同的计算机可以选用其中任式都是常用方式,不同的计算机可以选用其中任何一种。何一种。2.1 数据与文字的表示方法 2.1.4 汉字的表示方法汉字的表示方法 o汉字的汉字的输入编码输

19、入编码:为了能直接使用西文标准键盘把汉字输:为了能直接使用西文标准键盘把汉字输入到计算机入到计算机,就必须为汉字设计相应的输入编码方法。当前就必须为汉字设计相应的输入编码方法。当前采用的方法主要有以下三类采用的方法主要有以下三类:n数字编码数字编码:常用的是国标区位码:常用的是国标区位码 n拼音码拼音码:拼音码是以汉字拼音为基础的输入方法。:拼音码是以汉字拼音为基础的输入方法。n字形编码字形编码:字形编码是用汉字的形状来进行的编码。:字形编码是用汉字的形状来进行的编码。o除了上述三种编码方法之外,为了加快输入速度,在上述除了上述三种编码方法之外,为了加快输入速度,在上述方法基础上,发展了词组输

20、入方法基础上,发展了词组输入联想输入等多种快速输入方联想输入等多种快速输入方法。但是都利用了键盘进行法。但是都利用了键盘进行“手动手动”输入。理想的输入方输入。理想的输入方式是利用语音或图象识别技术式是利用语音或图象识别技术“自动自动”将拼音或文本输入将拼音或文本输入到计算机内到计算机内,使计算机能认识汉字,听懂汉语,并将其自动使计算机能认识汉字,听懂汉语,并将其自动转换为机内代码表示。目前这种理想已经成为现实。转换为机内代码表示。目前这种理想已经成为现实。2.1 数据与文字的表示方法 2.1.4 汉字的表示方法汉字的表示方法 o汉字内码汉字内码:汉字内码是用于汉字信息的存储、交:汉字内码是用

21、于汉字信息的存储、交换、检索等操作的机内代码,一般采用两个字节换、检索等操作的机内代码,一般采用两个字节表示。英文字符的机内代码是七位的表示。英文字符的机内代码是七位的ASCII码,码,当用一个字节表示时,最高位为当用一个字节表示时,最高位为“0”。为了与英。为了与英文字符能相互区别,汉字机内代码中两个字节的文字符能相互区别,汉字机内代码中两个字节的最高位均规定为最高位均规定为“1”。o有些系统中字节的最高位用于奇偶校验位,这种有些系统中字节的最高位用于奇偶校验位,这种情况下用三个字节表示汉字内码。情况下用三个字节表示汉字内码。2.1 数据与文字的表示方法 2.1.4 汉字的表示方法汉字的表示

22、方法 o汉字字模码汉字字模码:字模码是用点阵表示的汉字字形代:字模码是用点阵表示的汉字字形代码,它是汉字的输出形式。码,它是汉字的输出形式。o根据汉字输出的要求不同,点阵的多少也不同。根据汉字输出的要求不同,点阵的多少也不同。简易型汉字为简易型汉字为1616点阵,提高型汉字为点阵,提高型汉字为2424点阵、点阵、3232点阵,甚至更高。字模点点阵,甚至更高。字模点阵的信息量很大,所占存储空间也很大阵的信息量很大,所占存储空间也很大(示例示例)。因此字模点阵只能用来构成因此字模点阵只能用来构成汉字库汉字库,不能用于机,不能用于机内存储。字库中存储了每个汉字的点阵代码。当内存储。字库中存储了每个汉

23、字的点阵代码。当显示输出或打印输出时才检索字库,输出字模点显示输出或打印输出时才检索字库,输出字模点阵,得到字形。阵,得到字形。2.1 数据与文字的表示方法 2.1.4 汉字的表示方法汉字的表示方法 o注意注意:汉字的输入编码、汉字内码、字模码是计:汉字的输入编码、汉字内码、字模码是计算机中用于输入、内部处理、输出三种不同用途算机中用于输入、内部处理、输出三种不同用途的编码,不要混为一谈。的编码,不要混为一谈。2.1 数据与文字的表示方法 2.1.5 校验码校验码 o为了防止计算机在处理信息过程中出现错误,可为了防止计算机在处理信息过程中出现错误,可将信号采用专门的逻辑线路进行编码以检测错误将

24、信号采用专门的逻辑线路进行编码以检测错误,甚至校正错误。通常的方法是,在每个字上添加甚至校正错误。通常的方法是,在每个字上添加一些校验位,用来确定字中出现错误的位置。计一些校验位,用来确定字中出现错误的位置。计算机中常用这种检错或纠错技术进行存储器读写算机中常用这种检错或纠错技术进行存储器读写正确性或传输信息的检验。这里仅介绍最简单且正确性或传输信息的检验。这里仅介绍最简单且应用广泛的检错码:采用一位校验位的应用广泛的检错码:采用一位校验位的奇校验奇校验或或偶校验偶校验(原理)。(原理)。2.2 定点加法减法运算 2.2.1 补码加法补码加法 o补码加法的公式是:补码加法的公式是:补补补补补补

25、 (mod 2)o补码加法的特点,一是符号位要作为数的一部分补码加法的特点,一是符号位要作为数的一部分一起参加运算,二是要在模一起参加运算,二是要在模2的意义下相加,即的意义下相加,即超过超过2的进位要丢掉(示例)。的进位要丢掉(示例)。2.2 定点加法减法运算 2.2.2 补码减法补码减法 o补码减法的公式是:补码减法的公式是:补补补补补补 补补补补 o可见,负数的减法运算也要设法化为加法来做可见,负数的减法运算也要设法化为加法来做,其所以使用这种方法而不使用直接减法,是因为其所以使用这种方法而不使用直接减法,是因为它可以和常规的加法运算使用同一加法器电路,它可以和常规的加法运算使用同一加法

26、器电路,从而简化了计算机的设计(示例)。从而简化了计算机的设计(示例)。2.2 定点加法减法运算 2.2.3 溢出概念与检测方法溢出概念与检测方法 o在定点小数机器中,数的表示范围为在定点小数机器中,数的表示范围为|1.在在运算过程中如出现大于运算过程中如出现大于1的现象,称为的现象,称为“溢出溢出”。在定点机中,正常情况下溢出是不允许的,因为在定点机中,正常情况下溢出是不允许的,因为溢出发生会使运算结果产生错误。溢出发生会使运算结果产生错误。o两个正数相加两个正数相加,结果大于机器所能表示的最大正结果大于机器所能表示的最大正数数,称为称为正溢正溢。而两个负数相加,结果小于机器。而两个负数相加

27、,结果小于机器所能表示的最小负数,称为所能表示的最小负数,称为负溢负溢(示例)(示例)。o对定点整数而言,也同样存在正溢、负溢问题。对定点整数而言,也同样存在正溢、负溢问题。2.2 定点加法减法运算 2.2.3 溢出概念与检测方法溢出概念与检测方法 o为了判断为了判断“溢出溢出”是否发生,可采用两种检测的是否发生,可采用两种检测的方法:方法:n第一种方法是采用第一种方法是采用双符号位法双符号位法,这称为,这称为“变形补码变形补码”或或“模模4补码补码”。n第二种溢出检测方法是采用第二种溢出检测方法是采用单符号位法单符号位法。2.2 定点加法减法运算 2.2.3 溢出概念与检测方法溢出概念与检测

28、方法 o采用变形补码后,任何小于采用变形补码后,任何小于1的正数,两个符号的正数,两个符号位都是位都是“0”,即,即00.12n;任何大于;任何大于1的的负数,两个符号位都是负数,两个符号位都是“1”,即,即11.12n。如果两个数相加后,其结果的符号位出现如果两个数相加后,其结果的符号位出现“01”或或“10”两种组合时,表示发生溢出(示例)两种组合时,表示发生溢出(示例)。o溢出逻辑表达式为溢出逻辑表达式为 VSf1 Sf2,其中其中Sf1和和Sf2分别分别为最高符号位和第二符号位。此逻辑表达式可用为最高符号位和第二符号位。此逻辑表达式可用异或门实现。异或门实现。o变形补码相加的结果,不论

29、溢出与否,最高符号变形补码相加的结果,不论溢出与否,最高符号位始终指示正确的符号。位始终指示正确的符号。2.2 定点加法减法运算 2.2.3 溢出概念与检测方法溢出概念与检测方法 o采用单符号位法时,当最高有效位产生进位而符采用单符号位法时,当最高有效位产生进位而符号位无进位时,产生上溢;当最高有效位无进位号位无进位时,产生上溢;当最高有效位无进位而符号位有进位时,产生下溢。而符号位有进位时,产生下溢。o溢出逻辑表达式为溢出逻辑表达式为VCf Co,其中其中Cf为符号位产为符号位产生的进位,生的进位,Co为最高有效位产生的进位。此逻辑为最高有效位产生的进位。此逻辑表达式也可用异或门实现。表达式

30、也可用异或门实现。o在定点机中,当运算结果发生溢出时,机器通过在定点机中,当运算结果发生溢出时,机器通过逻辑电路自动检查出溢出,并进行中断处理。逻辑电路自动检查出溢出,并进行中断处理。2.2 定点加法减法运算 2.2.4 基本的二进制加法基本的二进制加法/减法器减法器 o复习一位全加器的设计实现。复习一位全加器的设计实现。o动画演示动画演示:4位行波进位加减器。位行波进位加减器。2.2 定点加法减法运算 2.2.5 十进制加法器十进制加法器 o十进制加法器可由十进制加法器可由BCD码码(二十进制码二十进制码)来设计,来设计,它可以在二进制加法器的基础上加上适当的它可以在二进制加法器的基础上加上

31、适当的“校校正正”逻辑来实现,该校正逻辑可将二进制的逻辑来实现,该校正逻辑可将二进制的“和和”改变成所要求的十进制格式。改变成所要求的十进制格式。o一位十进制数字的一位十进制数字的BCD加法器单元的逻辑结构图加法器单元的逻辑结构图及及n位位BCD码行波式进位加法器的一般结构图。码行波式进位加法器的一般结构图。2.3 定点乘法运算 2.3.1 原码并行乘法原码并行乘法 o在定点计算机中,两个原码表示的数相乘的运算在定点计算机中,两个原码表示的数相乘的运算规则是:乘积的符号位由两数的符号位按异或运规则是:乘积的符号位由两数的符号位按异或运算得到,而乘积的数值部分则是两个正数相乘之算得到,而乘积的数

32、值部分则是两个正数相乘之积。积。设设n位被乘数和乘数用定点小数表示位被乘数和乘数用定点小数表示(定点整数也同样适用定点整数也同样适用)被乘数被乘数 原原f.n110乘数乘数 原原f.n110乘积乘积 原原(f f)(0.n110)(0.n110)式中:式中:f为被乘数符号,为被乘数符号,f为乘数符号。为乘数符号。2.3 定点乘法运算 2.3.1 原码并行乘法原码并行乘法 o不带符号的阵列乘法器不带符号的阵列乘法器 设有两个不带符号的二进制整数:设有两个不带符号的二进制整数:Aam1a1a0,Bbn1b1b0相乘后产生相乘后产生mn位乘积位乘积P:Ppmn1p1p0乘法过程如右图:乘法过程如右图

33、:2.3 定点乘法运算 2.3.1 原码并行乘法原码并行乘法 o不带符号的阵列乘法器不带符号的阵列乘法器o设计思想:设计思想:n每一个部分乘积项每一个部分乘积项(位积位积)aibj叫做一个被加数。这叫做一个被加数。这mn个被加数个被加数aibj|0im1和和0jn1可以用可以用mn个个“与与”门并行地产生。门并行地产生。nm位乘位乘n位不带符号整数的阵列乘法器设计为两部分:位不带符号整数的阵列乘法器设计为两部分:被加数产生部件和被加数求和部件,显然,设计高被加数产生部件和被加数求和部件,显然,设计高速并行乘法器的基本问题,就在于缩短被加数矩阵速并行乘法器的基本问题,就在于缩短被加数矩阵中每列所

34、包含的中每列所包含的1的加法时间。的加法时间。2.3 定点乘法运算 2.3.1 原码并行乘法原码并行乘法 o不带符号的阵列乘法器不带符号的阵列乘法器mn位逻辑图:位逻辑图:演示:演示:5位位5位阵列乘法器位阵列乘法器 2.3 定点乘法运算 2.3.1 原码并行乘法原码并行乘法 o带符号的阵列乘法器带符号的阵列乘法器o求补电路:求补电路:演示演示2.3 定点乘法运算 2.3.1 原码并行乘法原码并行乘法 o带符号的阵列乘法器带符号的阵列乘法器o(n1)(n1)位带位带求补器的阵列乘法器求补器的阵列乘法器逻辑方框图:逻辑方框图:o既适用于原码乘法,既适用于原码乘法,也适用于间接的补码也适用于间接的

35、补码乘法。乘法。2.3 定点乘法运算 2.3.2 补码并行乘法补码并行乘法 o补码与真值得转换公式补码与真值得转换公式 设定点补码整数设定点补码整数N补补an-1an-2a1a0,an-1是符是符号位,则真值号位,则真值N可以表示成:可以表示成:n-2 N an-12n-1ai2i i=0 2.3 定点乘法运算 2.3.2 补码并行乘法补码并行乘法 o一般化的全加器形式一般化的全加器形式 2.3 定点乘法运算 2.3.2 补码并行乘法补码并行乘法 o直接补码阵列乘法器直接补码阵列乘法器 o5位位5位直接补码操作,位直接补码操作,()标注负的被加项:标注负的被加项:(a4)a3 a2 a1 a0

36、A )(b4)b3 b2 b1 b0B(a4b0)a3b0 a1b0 a1b0 a0b0 (a4b1)a3b1 a2b1 a1b1 a0b1 (a4b2)a3b2 a2b2 a1b2 a0b2 (a4b3)a3b3 a2b3 a1b3 a0b3)a4b4 (a3b4)(a2b4)(a1b4)(a0b4)p9 p8 p7 p6 p5 p4 p3 p2 p1 p0 P 5位位5位直接补码位直接补码阵列乘法器原理阵列乘法器原理示意示意2.4 定点除法运算 2.4.1 原码除法算法原理原码除法算法原理 o两个原码表示的数相除时两个原码表示的数相除时,商的符号由两数的符商的符号由两数的符号按位相加求得,

37、商的数值部分由两数的数值部号按位相加求得,商的数值部分由两数的数值部分相除求得。分相除求得。设有设有n位定点小数位定点小数(定点整数也同样适用定点整数也同样适用):被除数,其原码为被除数,其原码为原原f.n-110除数,其原码为除数,其原码为原原f.n-110 则有商则有商q/,其原码为:其原码为:q原原(f f)+(0.n-110/0.n-110)2.4 定点除法运算 2.4.1 原码除法算法原理原码除法算法原理 设设0.1001,0.1011,求,求的过程如下的过程如下:0.1101 商商q0.1011 0.10010(r0)被除数小于除数,商被除数小于除数,商0 0.01011 2-1除

38、数右移除数右移1位,减除数,商位,减除数,商1 0.001110 r1得余数得余数r1 0.001011 2-2除数右移除数右移1位,减除数,商位,减除数,商1 0.0000110 r2 得余数得余数r2 0.0001011 2-3除数右移除数右移1位,不够减,商位,不够减,商0 0.00001100 r3 得余数得余数r3 0.00001011 2-4除数右移除数右移1位,减除数,商位,减除数,商1 0.00000001 r4 得余数得余数r4得得的商的商q0.1101,余数,余数r0.00000001。2.4 定点除法运算 2.4.1 原码除法算法原理原码除法算法原理 o事实上,机器的运算

39、过程和人毕竟不同,人会心事实上,机器的运算过程和人毕竟不同,人会心算,一看就知道够不够减。但机器却不会心算,算,一看就知道够不够减。但机器却不会心算,必须先作减法,若余数为正,才知道够减;若余必须先作减法,若余数为正,才知道够减;若余数为负,才知道不够减。不够减时必须恢复原来数为负,才知道不够减。不够减时必须恢复原来的余数,以便再继续往下运算。这种方法称为的余数,以便再继续往下运算。这种方法称为恢恢复余数法复余数法。要恢复原来的余数,只要当前的余数。要恢复原来的余数,只要当前的余数加上除数即可。但由于要恢复余数,使除法进行加上除数即可。但由于要恢复余数,使除法进行过程的步数不固定,因此控制比较

40、复杂。实际中过程的步数不固定,因此控制比较复杂。实际中常用常用不恢复余数法不恢复余数法,又称,又称加减交替法加减交替法。其特点是。其特点是运算过程中如出现不够减,则不必恢复余数,根运算过程中如出现不够减,则不必恢复余数,根据余数符号,可以继续往下运算,因此步数固定,据余数符号,可以继续往下运算,因此步数固定,控制简单。控制简单。2.4 定点除法运算 2.4.2 并行除法器并行除法器 o可控加法可控加法/减法减法(CAS)单元单元 2.4 定点除法运算 2.4.2 并行除法器并行除法器 o不恢复余数的阵列除法器不恢复余数的阵列除法器 被除数被除数(双倍长双倍长):0.123456除数:除数:0.

41、123商数:商数:0.q1q2q3余数:余数:0.00r3r4r5r6字长:字长:n14(示例示例)2.5 定点运算器的组成 2.5.1 逻辑运算逻辑运算 o计算机中除了进行加、减、乘、除等基本算术运计算机中除了进行加、减、乘、除等基本算术运算外,还可对两个或一个逻辑数进行逻辑运算。算外,还可对两个或一个逻辑数进行逻辑运算。所谓逻辑数,是指不带符号的二进制数。利用逻所谓逻辑数,是指不带符号的二进制数。利用逻辑运算可以进行两个数的比较,或者从某个数中辑运算可以进行两个数的比较,或者从某个数中选取某几位等操作。选取某几位等操作。o计算机中的逻辑运算,主要是指计算机中的逻辑运算,主要是指逻辑非逻辑非

42、、逻辑加逻辑加、逻辑乘逻辑乘、逻辑异逻辑异四种基本运算。四种基本运算。2.5 定点运算器的组成 2.5.1 逻辑运算逻辑运算 o逻辑非运算:逻辑非运算:逻辑非也称求反。对某数进行逻辑逻辑非也称求反。对某数进行逻辑非运算,就是按位求它的反,常用变量上方加一非运算,就是按位求它的反,常用变量上方加一横来表示。横来表示。设一个数表示成:设一个数表示成:012n对求逻辑非,则有:对求逻辑非,则有:012n ii(i0,1,2,n)2.5 定点运算器的组成 2.5.1 逻辑运算逻辑运算 o逻辑加运算:逻辑加运算:对两个数进行逻辑加,就是按位求对两个数进行逻辑加,就是按位求它们的它们的“或或”,所以逻辑加

43、又称,所以逻辑加又称逻辑或逻辑或,常用记,常用记号号“V”或或“”来表示。来表示。设有两个数,它们表示为:设有两个数,它们表示为:012n 012n若若:012n则:则:iii(i0,1,2,n)2.5 定点运算器的组成 2.5.1 逻辑运算逻辑运算 o逻辑乘运算:逻辑乘运算:对两数进行逻辑乘,就是按位求它对两数进行逻辑乘,就是按位求它们的们的“与与”,所以逻辑乘又称,所以逻辑乘又称“逻辑与逻辑与”,常用,常用记号记号“”或或“”来表示。来表示。设有两个数,它们表示为:设有两个数,它们表示为:012n 012n若若:012n则:则:iii(i0,1,2,n)2.5 定点运算器的组成 2.5.1

44、 逻辑运算逻辑运算 o逻辑异运算:逻辑异运算:对两数进行异就是按位求它们的模对两数进行异就是按位求它们的模2和,所以逻辑异又称和,所以逻辑异又称“按位加按位加”,常用记号,常用记号“”表示。表示。设有两个数,它们表示为:设有两个数,它们表示为:012n 012n若若:012n则:则:ii i(i0,1,2,n)2.5 定点运算器的组成 2.5.2 多功能算术多功能算术/逻辑运算单元逻辑运算单元 o将全加器的功能进行扩展后能完成多种算术将全加器的功能进行扩展后能完成多种算术/逻逻辑运算:辑运算:(74181ALU芯片实例)芯片实例)2.5 定点运算器的组成 2.5.2 多功能算术多功能算术/逻辑

45、运算单元逻辑运算单元 o先行进位原理先行进位原理o74182先行进位部件(先行进位部件(CLA)o两级先行进位的两级先行进位的ALU的构成的构成 由八个由八个74181ALU和两个和两个74182CLA器件组成的器件组成的32位位ALU逻辑方框图:逻辑方框图:2.5 定点运算器的组成 2.5.3 内部总线内部总线 o根据总线所在位置,总线分为根据总线所在位置,总线分为内部总线内部总线和和外部总外部总线线两类。内部总线是指两类。内部总线是指CPU内各部件的连线,而内各部件的连线,而外部总线是指系统总线,即外部总线是指系统总线,即CPU与存储器、与存储器、I/O系统之间的连线。系统之间的连线。o按

46、总线的逻辑结构来说,总线可分为按总线的逻辑结构来说,总线可分为单向传送总单向传送总线线和和双向传送总线双向传送总线。所谓单向总线,就是信息只。所谓单向总线,就是信息只能向一个方向传送。所谓双向总线,就是信息可能向一个方向传送。所谓双向总线,就是信息可以分两个方向传送,既可以发送数据,也可以接以分两个方向传送,既可以发送数据,也可以接收数据。收数据。2.5 定点运算器的组成 2.5.3 内部总线内部总线 2.5 定点运算器的组成 2.5.4 定点运算器的基本结构定点运算器的基本结构 o运算器包括运算器包括ALU阵列乘除器阵列乘除器寄存器寄存器多路开关多路开关三三态缓冲器态缓冲器数据总线等逻辑部件

47、。运算器的设计,数据总线等逻辑部件。运算器的设计,主要是围绕主要是围绕ALU和寄存器同数据总线之间如何传和寄存器同数据总线之间如何传送操作数和运算结果进行的。计算机的运算器大送操作数和运算结果进行的。计算机的运算器大体有如下三种结构形式体有如下三种结构形式:n单总线结构的运算器单总线结构的运算器 n双总线结构的运算器双总线结构的运算器 n三总线结构的运算器三总线结构的运算器 2.5 定点运算器的组成 2.5.4 定点运算器的基本结构定点运算器的基本结构 o单总线结构的运算器单总线结构的运算器2.5 定点运算器的组成 2.5.4 定点运算器的基本结构定点运算器的基本结构 o双总线结构的运算器双总

48、线结构的运算器2.5 定点运算器的组成 2.5.4 定点运算器的基本结构定点运算器的基本结构 o三总线结构的运算器三总线结构的运算器2.6 浮点运算方法和浮点运算器 2.6.1 浮点加法、减法运算浮点加法、减法运算 设有两个浮点数设有两个浮点数和和,它们分别为它们分别为 2EM 2EM其中:其中:E和和E分别为数分别为数和和的阶码的阶码 M和和M为数为数和和的尾数。的尾数。两浮点数进行加法和减法的运算规则是:两浮点数进行加法和减法的运算规则是:(M2E-EM)2E,EE2.6 浮点运算方法和浮点运算器 2.6.1 浮点加法、减法运算浮点加法、减法运算 o完成浮点加减运算的操作过程大体分为四步:

49、完成浮点加减运算的操作过程大体分为四步:n 0 操作数的检查操作数的检查n比较阶码大小并完成对阶比较阶码大小并完成对阶n尾数进行加或减运算尾数进行加或减运算n结果规格化并进行舍入处理结果规格化并进行舍入处理o浮点加减运算的操作流程浮点加减运算的操作流程o例题例题 2.6 浮点运算方法和浮点运算器 2.6.1 浮点加法、减法运算浮点加法、减法运算 o浮点加减运算操作过程的几个关键:浮点加减运算操作过程的几个关键:n 在对阶时应该总是在对阶时应该总是使小阶向大阶看齐使小阶向大阶看齐(?)。(?)。n结果规格化时,在尾数求和有溢出时应该结果规格化时,在尾数求和有溢出时应该右规右规,否,否则一般情况下

50、是则一般情况下是左规左规。n在舍入处理中,简单的舍入方法有在舍入处理中,简单的舍入方法有“0舍舍1入入”法和法和“恒置一恒置一”法。法。n浮点数的溢出是以其阶码溢出表现出来的。浮点数的溢出是以其阶码溢出表现出来的。阶码上阶码上溢溢是指超过了阶码可能表示的最大值的正指数值,是指超过了阶码可能表示的最大值的正指数值,一般将其认为是一般将其认为是和和。阶码下溢阶码下溢是指超过了阶是指超过了阶码可能表示的最小值的负指数值,一般将其认为是码可能表示的最小值的负指数值,一般将其认为是0。2.6 浮点运算方法和浮点运算器 2.6.2 浮点乘法、除法运算浮点乘法、除法运算 设有两个浮点数设有两个浮点数和和,它

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(计算机组成和结构课件第二章.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|