运算方法与运算器.ppt
《运算方法与运算器.ppt》由会员分享,可在线阅读,更多相关《运算方法与运算器.ppt(131页珍藏版)》请在三一办公上搜索。
1、第二章 运算方法和运算器,计算机组成原理,本章首先讲述计算机中数据与文字的表示方法然后讲述定点运算方法、定点运算器的组成,最后讲述浮点运算方法、浮点运算器的组成。重点掌握和了解 二进数的表数范围定点数的乘除法运算规格化浮点数的四则运算阵列乘除法器,本 章 主 要 内 容,2.1数据与文字的表示方法,计算机中使用的数据可分成两大类:1、符号数据:非数字符号的表示(ASCII、汉字、图形等)2、数值数据:数字数据的表示方式(定点、浮点),2.1数据与文字的表示方法,计算机数字和字符的表示方法应有利于数据的存储、加工(处理)、传送;编码:用少量、简单的基本符号,选择合适的规则表示尽量多的信息,同时利
2、于信息处理(速度、方便)计算机在数据、文字的表示方式时,应该考虑一下几个因素:表示的数据类型(符号、小数点、数值)数值的范围数值精度存储、处理、传送的硬件代价,数据格式,三、计算机常用的数据表示格式有两种:定点表示:小数点位置固定浮点表示:小数点位置不固定,数据格式,定点表示法所有数据的小数点位置固定不变理论上位置可以任意,但实际上将数据表示有两种方法(小数点位置固定-定点表示法/定点格式):纯小数纯整数定点数表示:带符号数不带符号数,1、定点纯小数,x0 x1 x2 x3 xn-1 xn表示数的范围是 0|12n(最小数、最大数、最接近0的正数、最接近0的负数),符号,量值,小数点固定于符号
3、位之后,不需专门存放位置,数据格式,数据格式,2、纯小数的表示范围,数据格式,3、定点纯整数 x0 x1 x2 x3 xn-1 xn表示数的范围是 0|2n1最小数、最大数、最接近0的正数、最接近0的负数呢,符号,量值,小数点固定于最后一位之后,不需专门存放位置,数据格式,定点表示法的特点定点数表示数的范围受字长限制,表示数的范围有限;定点表示的精度有限机器中,常用定点纯整数表示;如果用定点表示,则如何表示实数(包括小数和整数)呢?,引入浮点数,数据格式,五、浮点表示:小数点位置随阶码不同而浮动1、格式:N=RE.M2、机器中表示,指数E,基数R,取固定的值,比如10,2等,尾数M,2.1 数
4、据与文字的表示方法,K(基数):最大进位数。K i:位权。m(系数):每个数位上的值,取值范围0k-1,【例】343.43=310241013100410-1310-2,进位计数制按进位的方法进行计数,简称进位制。数字累计到最大计数时,数码长度就增加一位或数码高位数值增 1。任意进制数的表示,2.1 数据与文字的表示方法,常用数制,小数点右移(数据左移)n 位相当于乘以K n(增加K n 倍)小数点左移(数据右移)n 位相当于除以K n(为K n 分之一),数制小结:十进制数与二进制数之间的转换需计算,不直观。十二:整数部分除基取余,小数部分乘基取整。二十:按权展开。八、十六进制数与二进制数之
5、间转换方便。二八、十六:小数点向左向右3位或4位一组,合成一位。八、十六二:每一位展开成3位或4位二进制数不便于书写、阅读。十六进制数书写、阅读相对方便。,2.1 数据与文字的表示方法,十进制数的编码BCD码 Binary-Code Decimal 用四位二进制代码来表示一位十进制数。8421码:标准BCD码(NBCD-sometimes called Natural Binary-Coded Decimal)从高到低各位权值8、4、2、1。1111 1111B=255D=(0010 0101 0101)BCD2421码:各位权值2、4、2、1。前5位编码与8421码一致后5位编码与前5位编码
6、是对9的自补码对9的自补码:某数的2421码,自身按位取反,得到该数对9补数的2421码。,2.1 数据与文字的表示方法,2.1 数据与文字的表示方法,常见的BCD码,数的机器码表示无符号数:正整数。带符号数:正数或负数。真值:带“+”、“”的数值本身。例:+0.01、-1000机器数(机器码):最高位为符号位,“0”表示“+”,“1”表示“”。原码反码补码,2.1 数据与文字的表示方法,2.1 数据与文字的表示方法,原码定点整数X1=+9=+1001B X1原=0000 1001.X2=9=1001B X2原=1000 1001.定点小数X1=+0.75=+0.11B X1原=0.11000
7、00X2=0.75=0.11B X2原=1.11000000的表示形式不唯一+0原=00000000 0原=10000000原码加减法运算复杂。,反码定点整数X1=+9=+1001B X1反=0000 1001.X2=9=1001B X2反=1111 0110.定点小数X1=+0.75=+0.11B X1反=0.1100000X2=0.75=0.11B X2反=1.00111110的表示形式不唯一+0反=00000000 0反=11111111,2.1 数据与文字的表示方法,补码的引入模和同余模:计量器的溢出容量,用M表示。当运算结果超出计量范围,溢出部分舍弃。字长为n+1位时定点整数的模为2
8、n+1。定点小数的模为2。同余:两整数A、B除以模M,所得的余数相同。可记作A=B(mod M)当模为12时 4和16同余,可写作 4=16(mod 12)-2和10同余,可写作 2=10(mod 12)利用补码可将减法运算转换成为加法运算,2.1 数据与文字的表示方法,4-2=4+10,补码定点整数X1=+9=+1001B X1补=0000 1001.X2=9=1001B X2补=1111 0111.定点小数X1=+0.75=+0.11B X1补=0.1100000X2=0.75=0.11B X2补=1.01000000的表示形式唯一+0补=0补=00000000,2.1 数据与文字的表示方
9、法,X真值,+/-变成 0/1数值位不变,X原,XS=0时,数值位不变XS=1时,数值位变反加1,X补,XS=0时,数值位不变XS=1时,数值位变反,X反,2.1 数据与文字的表示方法,三种不同机器数以及真值之间的转换,原码与补码的直接转换法当X为正数时,X补=X原=X;当X为负数时,由原码求补码的简便算法:符号位不变,最后面的1及其后各位保持不变,中间各位按位取反。例:X原=1.111001 1000 X补=1.000110 1000,2.1 数据与文字的表示方法,取反,三种机器数的比较正数的原、反、补码相等,负数的各自不同原码的符号位是人为定义的,不能参与运算补码的符号位是通过模运算得到的
10、,是数值的一部分,可参与运算。原、反码零的表示形式不唯一,补码零的表示形式唯一。假设字长为8位,则:+0原=00000000-0原=10000000+0反=00000000-0反=11111111+0补=-0补=00000000,2.1 数据与文字的表示方法,机器码的表数范围不同原、反码的表数范围相对于零点对称补码的表数范围,负方向比正方向宽以字长4位(含符号位)的纯整数为例,原码、反码表数范围,补码表数范围(多表示一个负数),2.1 数据与文字的表示方法,1000,-8,1000,-0,2.1 数据与文字的表示方法,真值与三种机器数间的对照,定点数的表示范围原码定点数(字长n+1位)纯小数:
11、(12-n)(1-2-n)例:字长为8位,则最小定点小数:-127/128 最大定点小数:127/128纯整数:(2n 1)(2n-1)例:字长为8位,则最小定点整数:-127 最大定点整数:127,1.1111111,0.1111111,11111111.,01111111.,2.1 数据与文字的表示方法,定点数的表示范围补码定点数(字长n+1位)纯小数:112-n 例:字长为8位,则最小定点小数:1 最大定点小数:127/128纯整数:2n 2n1例:字长为8位,则最小定点整数:128最大定点整数:127,1.0000000,0.1111111,10000000.,01111111.,2.
12、1 数据与文字的表示方法,阶码,常为纯整数,尾数,常为纯小数,浮点数小数点的位置不固定,根据需要而浮动。任何一个数N的浮点表示形式为 N=M2E,2.1 数据与文字的表示方法,浮点数的表示范围若阶码数值部分为K位,尾数数值部分为n位,均用补码表示,则,2.1 数据与文字的表示方法,规格化的浮点数为了充分利用尾数的有效数位,规定尾数值应在0.51之间。补码表示时,尾数的最高位应与符号位不同当 1/2=M 1 时,应有0.1 的形式当 1=M-1/2 时,应有1.0 的形式,为什么是,而不是=?,为什么是=?,2.1 数据与文字的表示方法,补码的表示范围比原码宽,可以表示-1,-1补=1.0000
13、000,是规格化的浮点数,-1/2原=1.1000000-1/2补=1.1000000不是规格化的浮点数,浮点数的典型值:阶码和尾数均用补码表示,2.1 数据与文字的表示方法,X1移=27+1101101=10000000+1101101=11101101X1补=01101101,X2移=27+(-1101101)=10000000-1101101=00010011 X2补=10010011,移码:在真值X的基础上加一个常数,相当于X在数轴上向正方向偏移了若干单位。X移码=偏置值+X标准偏置值:字长n+1位时,偏置值为2n。例:字长8位,若偏置值为27,X1=+1101101,X2=-1101
14、101,求移码。,2.1 数据与文字的表示方法,2.1 数据与文字的表示方法,移码、补码和真值之间的关系设字长8位,偏置值为标准偏置值27,移码的特点(字长8位,偏置值为27)移码最高位为0表示负数,最高位为1表示正数。移码直观反映真值的大小。全0时,所对应的真值最小;全1时,所对应的真值最大;有利于两个浮点数进行阶码的大小比较0的移码表示形式唯一+0移=-0移=10000000移码将真值映射到正数域,可视为无符号数同一真值的补码和移码只相差符号位。,2.1 数据与文字的表示方法,IEEE754标准的浮点数:应用于80X86微机,32位短浮点数,64位长浮点数,80位临时浮点数,32位短浮点数
15、1.尾数隐含了最高位1(位权20),实际为24位,尾数采用原码表示。2.阶码采用偏置值为127的移码表示。,2.1 数据与文字的表示方法,(2)计算出阶码真值e=移码-偏置值127 e=1000 0010-111 1111=011=(3)10(3)写出尾数(包括隐含的最高位1)1.M=1.011011(4)写出此数的浮点记数形式X=(-1)s 1.M 2e=+1.011011*23=1011.011(5)转换成十进制数,并加上符号位 11.375,例1:若短浮点数x的754标准存储格式为(41360000)16,求其浮点数的十进制数值。(1)将十六进制数转换成二进制数,写成短浮点数格式,2.1
16、 数据与文字的表示方法,正数,阶码的移码(8位),隐含了最高数位1的尾数的原码(23位),例2:将(20.59375)10转换成短浮点数格式(1)把十进制数转换为二进制数(20.59375)10=(10100.10011)2(2)写成浮点记数形式,尾数保留最高位1,不计入。10100.10011=1.0100 10011*24(3)计算出阶码的移码 1111111+100=1000 0011(4)以短浮点数格式存储该数 41A4C000H,2.1 数据与文字的表示方法,非数值数据表示通常是指字符、字符串、图形符号和汉字等各种数据,它们通常不用来表示数值的大小,一般情况下不对它们进行算术运算。字
17、符和字符串表示ASC(美国标准信息交换码)7位基本ASC码(国际通用)可表示128种字符8位扩充ASC码(可重新定义)可表示256种字符ASC码可分为:显示字符控制字符,“0”为48“A”为65,return、backspace键的编码分别为13、8,2.1 数据与文字的表示方法,2.1 数据与文字的表示方法,汉字编码汉字是一种象形文字,无法直接用标准西文键盘输入,必须经过转换间接输入;汉字的字数也较多,不能用单字节的ASC(256个字符)来表示目前采用两个字节(可以表示64K字符)的汉字编码方案。汉字的应用范围较广(东南亚国家),但编码字符集不相同,中国大陆常用GB/GBK码,台湾BIG5。
18、,2.1 数据与文字的表示方法,外部(输入)码,机内码,字形(输出)码,汉字信息,其它系统或设备,汉字信息,键盘管理程序,汉字处理程序,交换码(国标码),汉字处理过程,2.1 数据与文字的表示方法,外部码也叫汉字输入编码,主要是从键盘(语音、手写、光电)输入计算机中的代表汉字的编码。汉字输入方案有数百种,基本上是直接利用西文标准键盘进行汉字输入,每一种汉字输入法都各自提供相应的键盘码与汉字机内码(码表)。编码方案可分四类:数码(如电报码,区位码,国标码等)音码(如全拼码,简拼码,双拼码等)形码(如五笔字型,大众码,仓吉码等)音形码(如自然码,首尾码等),2.1 数据与文字的表示方法,交换码 用
19、于计算机与其他系统或设备之间进行汉字代码信息交换的标准汉字代码目前最常使用的是国标码GB18030-2005收录了70244个汉字标准采用单字节、双字节和四字节三种方式对字符编码。单字节部分采用GB/T 11383的编码结构与规则,使用000至07F码位(对应于ASCII码的相应码位)。双字节部分,首字节码位从081至0FE,尾字节码位分别是040至07E和080至0FE。四字节部分采用GB/T 11383未采用的030到039作为对双字节编码扩充的后缀,这样扩充的四字节编码,其范围为081308130到0FE39FE39。其中第一、三个字节编码码位均为081至0FE,第二、四个字节编码码位均
20、为030至039。,2.1 数据与文字的表示方法,GB2312是汉字字符集和编码,每个汉字(图形符号)用两个字节表示,每个字节只用低7位,即最高位为0的二进制码()汉字分为两级:一级为使用频度高的常用汉字二级为次常用的汉字,的代号,中文全称为“信息交换用汉字编码字符集”,由中华人民共和国国家标准总局发布,一九八一年五月一日实施。GB是“国标”二字的汉语拼音缩写。GB2312 字符集(character set)只收录简化字汉字,以及一般常用字母和符号,主要通行于中国大陆地区和新加坡等地。GB2312 共收录有 7445 个字符,其中简化汉字 6763 个,字母和符号 682 个。,GB2312
21、 将所收录的字符分为 94 个区,编号为 01 区至 94 区;每个区收录 94 个字符,编号为 01 位至 94 位。GB2312 的每一个字符都由与其唯一对应的区号和位号所确定。例如:汉字“啊”,编号为 16 区 01 位。GB2312编码的范围为:高字节范围是0XA1-0XFF,低字节范围是0XA1-0XFF。,内部码 也称汉字内码或机内码,是计算机对汉字进行存储、运算、传码的实际代码。一般用两个字节表示一个汉字内码,每个字节最高位为 1。还有少数三字节、四字节等内部码。最多能表示128128=16384个汉字和图形符号 机内码目前虽未完全统一,但已趋于标准化。内部码与国标码的对应关系:
22、内码=国标码+8080 国标码每个字节最高位为1 内部码。例如:国标码 3B7A 00111011 01111010 机内码 BBFA 10111011 11111010,2.1 数据与文字的表示方法,字形码也称为字模码,用点阵表示的汉字字形代码,是汉字的输出形式。简易型 1616提高型 2424、3232等1616点阵,每个汉字占32字节。每行16点,每点0/1,16位,2个字节共16行162=32字节,2.1 数据与文字的表示方法,2.1 数据与文字的表示方法,汉字代码交换流程,奇偶校验码常用于存储器读、写检查或ASCII字符传送过程中的检查。实现方法:由有效信息位和1位奇偶校验位组成。奇
23、校验保证整个校验码中有奇数个1偶校验保证整个校验码中有偶数个1,2.1 数据与文字的表示方法,2.1 数据与文字的表示方法,简单奇偶校验仅实现横向的奇、偶校验。可检测出一位(或奇数位)错误,但不能确定出错位置。例7:假定信息位8位,奇、偶校验位在末尾。,交叉奇偶校验横向:每一个字节有一个奇、偶校验位纵向:全部字节同一位也设置奇、偶校验位可以发现两位同时出错的情况。例:纵、横均约定为偶校验,2.1 数据与文字的表示方法,1,1,补码加减法运算公式(讨论纯小数,纯整数类似)X+Y补=X补+Y补(mod 2)X-Y补=X补+-Y补(mod 2)可证,-Y补=-Y补(mod 2)所以,X-Y补=X补-
24、Y补(mod 2)-Y补=Y补+2-n(Y补连同符号位变反,末位加1)简便方法:Y补最右边的1及其后各位保持不变,连同符号位在内一起变反。例10:已知X1=-0.1110,X2=+0.1101,求:X1补,-X1补,X2补,-X2补解:X1原=1.1110 X2原=0.1101 X1补=1.0010 X2补=0.1101-X1补=0.1110-X2补=1.0011,2.2 定点加减运算,例9:x=+0.1011,y=-0.0101,利用补码加法计算x+y=?解:x补=0.1011,y补=1.1011 x补=0.1011+y补=1.1011 x+y补=10.0110 x+y=+0.0110,2.
25、2 定点加减运算,P32,+0.6875,-0.3125,+0.375,例11:x=+0.1101,y=+0.0110,利用补码减法计算x-y=?解:x补=0.1101,y补=0.0110,-y补=1.1010 x补=0.1101+-y补=1.1010 x-y补=10.0111 x-y=0.0111符号位参与运算,超出模的进位自动舍弃。自动舍弃后,结果正确吗?如何判断?,2.2 定点加减运算,P33,+0.8125,+0.375,+0.4375,补码的溢出在选定了运算字长和数的表示方法之后,计算装置所能表示的数的范围是一定的,超过此范围就称为溢出。例:运算字长 数的表示方法 定点整数的范围 n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 运算 方法 运算器

链接地址:https://www.31ppt.com/p-5849746.html