运算方法与运算器部件ppt课件_第1页
运算方法与运算器部件ppt课件_第2页
运算方法与运算器部件ppt课件_第3页
运算方法与运算器部件ppt课件_第4页
运算方法与运算器部件ppt课件_第5页
已阅读5页,还剩111页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第三章第三章 运算方法和运算部件运算方法和运算部件主要内容主要内容3.2 3.2 带符号数据的表示方法与带符号数据的表示方法与 加减运算加减运算3.3 3.3 二进制乘法运算二进制乘法运算3.5 3.5 浮点数的运算方法浮点数的运算方法3.6 3.6 运算部件运算部件3.7 3.7 计算机中的数据校验方法计算机中的数据校验方法3.4 3.4 定点除法运算定点除法运算3.1 3.1 数制数制3.1.1 3.1.1 数值型数据的表示和转换数值型数据的表示和转换3.1.2 十进制数的编码与运算3.1.1 3.1.1 数值型数据的表示和转换数值型数据的表示和转换2、进位计数制之间的转换例如:写出(11

2、01.01)2,(237)8,(10D)16的十进制数2)十进制转换成二进制方法例如:将例如:将(327)10转换成二进制数转换成二进制数2 327 余数2 163 1 2 81 1 2 40 1 2 20 0 2 10 0 2 5 0 2 2 1 2 1 0 2 0 1 (327)10 =(101000111) 2(327)10 =(101000111) 2最高位最高位最低位最低位乘基取整法乘基取整法(小数部分的转换小数部分的转换)例例:将将(0.2) 10 转换成二进制小数转换成二进制小数3)其它进制之间的直接转换法二进制转换成八进制(10110111.01101) 2 =(267.32)

3、8八进制: 2 6 7 . 3 2二进制二进制: 010 ,110 , 111 . 011 , 010: 010 ,110 , 111 . 011 , 010二进制二进制: 10 ,110 , 111 . 011 , 01: 10 ,110 , 111 . 011 , 01八进制转换二进制二进制转换成十六进制(10110111.01101) 2 =(1B7.68)16十六进制十六进制: 1 B 7 . 6 8: 1 B 7 . 6 8二进制二进制: 0001 ,1011 , 0111 . 0110 ,1000: 0001 ,1011 , 0111 . 0110 ,1000二进制二进制: 1 ,

4、1011 , 0111 . 0110 ,1: 1 ,1011 , 0111 . 0110 ,1十六进制转换成二进制3 3、数值符号的表示、数值符号的表示 3.1.2 3.1.2 十进制数的编码与运算十进制数的编码与运算余3码为无权代码,对应8421码加3而得。除上述三种BCD码之外,还有5421码、格雷码等BCD码二进制码二进制码 格雷码格雷码十进制编码的加法运算 0 1 1 1+ 1 0 0 0 1 1 1 1+ 0 1 1 01 0 1 0 1 1 0 0 0+ 1 0 0 11 0 0 0 1+ 0 1 1 01 0 1 1 1例:5+3=87+8=158+9=17 0 1 0 1+ 0

5、 0 1 1 1 0 0 02 2、 数字串在机内的表示与存储数字串在机内的表示与存储3.2 带符号数据的表示方法与加减运算3.2.1 3.2.1 原码、补码、反码和移码原码、补码、反码和移码 及运算及运算3.2.2 3.2.2 定点数和浮点数计算机中的两种表定点数和浮点数计算机中的两种表示方式示方式3.2.3 3.2.3 数字化信息的编码及表示数字化信息的编码及表示3.2.1 原码、补码、反码和移码及运算整数整数 127 127,-127-127;小数小数 127/128 127/128,-127/128-127/128;个数:个数:255255原码特点:原码特点:2、补码表示法补码的表示范

6、围:原码与补码之间的转换由X补求-X补求机器负数最大的优点就是将减法运算转换成加法运算。3、 反码表示法整数的表示方式整数的表示方式4、 移码表示法 X1 = +101 0101X1 = +101 0101X1X1补补= 0101 0101= 0101 0101X1X1移移= 1101 0101= 1101 0101X2 = -0101 0101X2 = -0101 0101X2X2补补=1010 1011=1010 1011X2X2移移=0010 1011=0010 1011码制表示法小结6、 数值的运算方法 计算机中,常用补码进展加减运算 补码可将减法变加法进展运算 补码运算特点:符号位和

7、数值位一同运算 定点补码运算在加法运算时的根本规那么: X+Y补= X补+Y补 定点补码运算在减法运算时的根本规那么: X-Y补=X补+-Y补 例如:知机器字长n=8,X=44,Y=53,求X+Y=?X补补=00101100,Y补补=00110101 X补补= 0 0 1 0 1 1 0 0 + Y补补= 0 0 1 1 0 1 0 110000110 X+Y= + 97 例:知机器字长n=8,X=-44, Y=-53, 求X+Y=?例:知机器字长n=8,X=44,Y=53,求X-Y=?例:知机器字长n=8,X=-44,Y=-53,求X-Y=? 溢出问题 例:知机器字长n=8,X= 120,Y

8、=10, 求X+Y=?溢出判别规那么与判别方法1双符号位溢出判别法 Sf1 Sf2 也被称为变形补码例:X=0.1001,Y=0.0101,求X+Y例:X= - 0.1001,Y= - 0.0101,求 X+Y=?例:X= 0.1011,Y= 0.0111,求 X+Y=?例:X= - 0.1011,Y= 0.0111,求 X-Y=?2进位溢出判别法 S C3.2.2 3.2.2 定点数和浮点数定点数和浮点数1、数的定点表示方法Sf S1S2 Sn数符数符数值部分数值部分小数点位置小数点位置Sf S1S2 Sn数符数符数值部分数值部分小数点位置小数点位置或或 2、数的浮点表示方法2浮点数的规格化

9、例题:某机器用32位表示一个实数,阶码8位含1位阶符,用定点整数补码表示;尾数24位含数符1位,用规格化定点小数补码表示,基数为2。那么:2求求Y= -256.5 的第一种浮点表示格式的第一种浮点表示格式3.3 二进制乘法运算乘法运算乘法运算1. 分析笔算乘法分析笔算乘法A = 0.1101 B = 0.1011AB = 0.100011110 . 1 1 0 10 . 1 0 1 11 1 0 11 1 0 10 0 0 01 1 0 10 . 1 0 0 0 1 1 1 1符号位单独处置符号位单独处置乘数的某一位决议能否加被乘数乘数的某一位决议能否加被乘数 4个位积一同相加个位积一同相加乘

10、积的位数扩展一倍乘积的位数扩展一倍乘积的符号心算求得乘积的符号心算求得 ?3.3.1 定点数一位乘法1 1、 定点原码一位乘定点原码一位乘2、定点补码一位乘法例例:设设X=0.1101,Y=0.1011,求求XY。 其中存放器其中存放器B=X ,计数器计数器Cd=4。 计算过程如下计算过程如下:0 0 0 0 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1 1 0 10 0 0 1 1 0 1 1 0 10 0 1 1 0 10 1 0 0 1 10 0 1 0 0 1 1 1 1 00 0 0 0 0 00 0 1 0 0 10 0 0 1 0 0 1 1 1 10 0 1 1

11、0 10 1 0 0 0 10 0 1 0 0 0 1 1 1 1 +x右移一位右移一位+x右移一位右移一位+0右移一位右移一位+x右移一位右移一位部分积部分积 A 乘数乘数 C 乘积高位 乘积低位1(丧失)1(丧失)0(丧失)1(丧失)XY=0.10001111例例知知 x = 0.1110 y = 0.1101 求求x y原原解:解:数值部分的运算数值部分的运算0 . 0 0 0 00 . 1 1 1 00 . 1 1 1 00 . 0 0 0 00 . 1 1 1 00 . 1 1 1 0部分积部分积 初态初态 z0 = 0 部部 分分 积积 乘乘 数数 说说 明明0 . 0 1 1 1

12、01 . 0 0 0 11 01 . 0 1 1 01 1 00 . 1 0 1 10 1 1 01,得,得 z4逻辑右移逻辑右移逻辑右移逻辑右移1 1 0 1=0 . 0 1 1 11,得,得 z10 1 1 0=0 . 0 0 1 11,得,得 z21 0 1 1=0 . 1 0 0 01,得,得 z31 1 0 1= 数值部分按绝对值相乘数值部分按绝对值相乘 乘积的符号位乘积的符号位 x0 y0 = 1 0 = 1x* y* = 0. 1 0 1 1 0 1 1 0那么那么 x y原原 = 1. 1 0 1 1 0 1 1 0特点特点绝对值运算绝对值运算逻辑移位逻辑移位结果结果用移位的次

13、数判别乘法能否终了用移位的次数判别乘法能否终了2、定点补码一位乘法例例3.35:设设X=-0.1101,Y=0.1011,即即X补补=11.0011,Y补补=0.1011 ,-X=00.1101 求求XY补补.计算过程如下计算过程如下:0 0 0 0 0 0 0. 1 0 1 1 0 初始值初始值,最后一位补最后一位补0 0 0 1 1 0 1 Y4Y5=10 +-X补补0 0 1 1 0 10 0 0 1 1 0 1 0 1 0 1 1 右移一位右移一位0 0 0 0 0 0 Y3Y4=11 +00 0 0 1 1 00 0 0 0 1 1 0 1 0 1 0 1 右移一位右移一位1 1 0

14、 0 1 1 Y2Y3=01 +X补补1 1 0 1 1 01 1 1 0 1 1 0 0 1 0 1 0 右移一位右移一位 0 0 1 1 0 1 Y1Y2=10 +-X补补0 0 1 0 0 00 0 0 1 0 0 0 0 0 1 0 1 右移一位右移一位1 1 0 0 1 1 Y0Y1=01 +X补补1 1 0 1 1 1 0 0 0 1+部分积部分积 乘数乘数Y Yi Yi+1 阐明阐明乘积高位 乘积低位XY补补=1.01110001, XY=-0.10001111器数量较多,内部构造规那么性强,适用超大规模集成电路实现。定点补码一位除法加减交替法X补Y补数 符最终商符第一步操作r补

15、 Y补数 符 上商下一步操作同号 0 X-Y 同号 异号 1 02ri补Y补2ri补+Y补异号 1 X+Y 同号 异号 1 02ri补Y补2ri补+Y补例3.41:设X=0.0100 , Y=-0.1000, 求X/Y补=?解: X补=00.0100,Y补=11.1000,-Y补=00.1000n这样这样X/Y补补=1.0111+0.0001=1.1000 余数为余数为0,表示除尽。,表示除尽。3.5 3.5 浮点数的运算方法浮点数的运算方法1 、加、减法运算详细阐明如下:详细阐明如下:(1) 求阶差求阶差(2) 对阶原那么对阶原那么j = jx jy = jx= jy 已对齐已对齐jx jy

16、 jx jy y 向向 x 看齐看齐x 向向 y 看齐看齐小阶向大阶看齐小阶向大阶看齐Sy 1, Sx 1, = 0 0 0 jy+1 jx+121001. 021101. 0333321111. 020010. 021101. 021101. 021001. 020100. 020001.0321100. 0例如例如 x = 0.1101 201 y = (0.1010) 211求求 x + y解:解:x补补 = 00, 01; 00.1101 y补补 = 00, 11; 11.0110 1. 对阶设阶码的符号也为双符号位对阶设阶码的符号也为双符号位j补补 = jx补补 jy补补= 00,

17、0111, 0111, 10阶差为负阶差为负 2Sx补补 = 00.0011 Sy补补= 11.011011.1001 Sx 2 jx+ 2 x+y补补 = 00, 11; 11. 1001 对阶对阶x补补 = 00, 11; 00.0011+对阶后的对阶后的Sx补补 求阶差求阶差2. 尾数求和尾数求和n 规格化:原码尾数值高位为1,补码尾数值高位与符号n 相反 (1) 规格化数的定义规格化数的定义(2) 规格化数的判别规格化数的判别r = 2 |S| 1 12S0正数正数真值真值原码原码补码补码反码反码规格化方式规格化方式S 0负数负数规格化方式规格化方式真值真值原码原码补码补码反码反码0.

18、1 0.1 0.1 0.1 原码原码 不论正数、负数,第一数位为不论正数、负数,第一数位为1补码补码 符号位和最高数值位不同符号位和最高数值位不同 0.1 1.1 1.0 1.0 特例特例S = = 0.100 0 12 12 补补 不是规格化的数不是规格化的数S = 1 1补补 是规格化的数是规格化的数S原原 = 1 . 1 0 0 0S补补 = 1 . 1 0 0 0S补补 = 1 . 0 0 0 0 (3) 左规左规(4) 右规右规尾数尾数 1,阶码减,阶码减 1,直到数符和第一数位不同为止,直到数符和第一数位不同为止 上例上例 x+y补补 = 00, 11; 11. 1001左规后左规

19、后 x+y补补 = 00, 10; 11. 0010 x + y = ( 0.1110)210 当当 尾数溢出尾数溢出 1时,需时,需 右规右规即尾数出现即尾数出现 01. 或或 10. 时时尾数尾数 1,阶码加,阶码加 1例例x = 0.1101 210 y = 0.1011 201求求 x +y除阶符、数符外,阶码取除阶符、数符外,阶码取 3 位,尾数取位,尾数取 6 位位 解:解:x补补 = 00, 010; 00. 110100y补补 = 00, 001; 00. 101100 对阶对阶 尾数求和尾数求和j补补 = jx补补 jy补补 = 00, 010 11, 111100, 001

20、阶差为阶差为 +1 Sy 1, jy+1 y补补 = 00, 010; 00. 010110Sx补补 = 00. 110100Sy补补 = 00. 010110对阶后的对阶后的Sy补补01. 001010+尾数溢出需右规尾数溢出需右规 右规右规x +y补补 = 00, 010; 01. 001010 x +y补补 = 00, 011; 00. 100101右规后右规后 x +y = 0. 100101 211n 舍入操作:0舍1入 或 恒置1在在 对阶对阶 和和 右规右规 过程中,能够出现过程中,能够出现 尾数末位丧失尾数末位丧失引起误差,需思索舍入引起误差,需思索舍入(1) 0 舍舍 1 入

21、法入法 (2) 恒置恒置 “1 法法例例x = ( )2-5 y = () 2-4 5878求求 x y除阶符、数符外,阶码取除阶符、数符外,阶码取 3 位,尾数取位,尾数取 6 位位解:解:x补补 = 11, 011; 11. 011000y补补 = 11, 100; 00. 111000 对阶对阶j补补 = jx补补 jy补补 = 11, 011 00, 100 11, 111阶差为阶差为 1 Sx 1, jx+ 1 x补补 = 11, 100; 11. 101100 尾数补码右移最高数值位补尾数补码右移最高数值位补1。x = ( 0.101000)2-101y = ( 0.111000)

22、2-100+ 尾数求和尾数求和Sx补补 = 11. 101100Sy补补 = 11. 001000+110. 110100 右规右规x+y补补 = 11, 100; 10. 110100 x+y补补 = 11, 101; 11. 011010采用采用0舍舍1入方入方式,无进位。将其转换二进制真值后为:式,无进位。将其转换二进制真值后为:右规后右规后 x y = (0.100110)2-11= ( )2-319321判别结果的正确性判别结果的正确性(即结果的阶码能否溢出即结果的阶码能否溢出)3332101110.02001010.021001.021001.021001.033332101101

23、.02001001.021001.021010.021001.03321100.0321011.0321011.0321011.02 2、浮点数的乘、除法运算、浮点数的乘、除法运算浮点乘除运算浮点乘除运算x = Sx 2jxy = Sy 2jy1. 乘法乘法x y = (Sx Sy)2jx+jy2. 除法除法xy=SxSy 2jx jy(1) 阶码采用阶码采用 补码补码(或移码或移码)定点加减运算定点加减运算(2) 尾数乘除同尾数乘除同 定点定点 运算运算3. 步骤步骤(3) 规格化规格化3.6 3.6 运算部件运算部件浮点运算电路浮点运算电路图 2-10 浮点加法器原理框图MESMES小 A

24、LU大 ALU控制右移左移或右移舍入部件阶码差加 1 或减 1MES1110003.7 3.7 计算机中的数据校验方法计算机中的数据校验方法3.7.1 奇偶校验法例如:八位信息例如:八位信息1010101110101011中共有中共有5 5个个1 1,附加校,附加校验位后变为九位。验位后变为九位。假设采用奇校验,那么附加的校验位应取假设采用奇校验,那么附加的校验位应取0 0值,值,保证保证1 1的个数为奇数个即的个数为奇数个即 0 10101011 0 10101011 ;假设采用偶校验那么附加的校验位应取假设采用偶校验那么附加的校验位应取1 1值即值即 1 10101011 1 101010

25、11 。奇偶校验的特点:奇偶校验的特点:1 1、奇偶校验法使数据的码距为、奇偶校验法使数据的码距为2 2,因此可检出数,因此可检出数据传送过程中奇数个数位出错的情况;据传送过程中奇数个数位出错的情况;2 2、实践中两位同时出错的概率极低,奇偶校验法、实践中两位同时出错的概率极低,奇偶校验法简便可靠易行,但它只能发现错误,却不知错在简便可靠易行,但它只能发现错误,却不知错在何处,因此不能自动纠正。何处,因此不能自动纠正。奇校验 1出错偶校验1出错偶构成奇构成D校为校验位 D校D0D1D2D3D4D5D6D78位数据的奇偶校验码构成电路及检码电路3.7.2 海明码校验方法海明码校验方法一、编码方法

26、以四个校验位进展阐明四个校验位最多可以校验11位数据。设:D10D9D8D7D6D5D4D3D2D1D0为11个数据位,P4P3P2P1分别为四个校验码,那么编码规那么是:海明码的总位数等于数据位与校验位之和;每个校验位Pi排放在2i-1的位置,例如P4排放 在第24-1=8位,其他数据位依序陈列。即: D10D9D8D7D6D5D4P4D3D2D1P3D0P2P1海明码的每一位用多个校验位一同进展校验, 被校验的位号等于校验它的各校验位位号和;各校验位的值为它参与校验的数据位的异或。二、检查纠错以四个校验位进展阐明 海明码数据传送到接纳方后,再将各校验位的值与它所参与校验的数据位的异或结果进

27、行异或运算。 运算结果称为校验和。校验和共有四个。 对偶校验来说,假设校验和不为零那么传输过程中间有错误。而错误的详细位置那么由四个校验和依序陈列后直接指明。假设四个校验和 S4S3S2S1 依序陈列后等于(1001)2=(9)10 时,就阐明海明码的第九位也就是D4发生了错误,此时只需将D4取反,也就纠正了错误。 n解:知解:知D10D9D8D7D6D5D4D3D2D1D0=10110100110 由于被校验位的位号等于校验它的各校验位位号由于被校验位的位号等于校验它的各校验位位号之和以及各校验位的取值等于它参与校验的数据位取之和以及各校验位的取值等于它参与校验的数据位取值的异或。所以校验位的取值以及所求海明码为:值的异或。所以校验位的取值以及所求海明码为:P1=D0D1 D3 D4 D6 D8 D10=1P2=D0 D2 D3 D5 D6 D9 D10=1P3=D1 D2 D3 D7 D8 D9 D10=1P4=D4 D5 D6 D7 D8 D9 D10=0D10D9D8D7D6D5D4P4D3D2D1P3D0P2P1=101101000111011传送正确时校验和的值为传送正确时校验和的值为0,假设不等于,假设不等于0,那么是几就是,那么是几就是第几位出错,是第几位出错,是7那么是第那么是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论