定点数和浮点数课件

上传人:F****n 文档编号:88124953 上传时间:2019-04-19 格式:PPT 页数:64 大小:265.50KB
返回 下载 相关 举报
定点数和浮点数课件_第1页
第1页 / 共64页
定点数和浮点数课件_第2页
第2页 / 共64页
定点数和浮点数课件_第3页
第3页 / 共64页
定点数和浮点数课件_第4页
第4页 / 共64页
定点数和浮点数课件_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《定点数和浮点数课件》由会员分享,可在线阅读,更多相关《定点数和浮点数课件(64页珍藏版)》请在金锄头文库上搜索。

1、1,1. 数的定点表示方法,(1). 定点整数小数点位置固定在数的最低位之后 如: Dn-1 Dn-2 D1 D0 . 范围: 2n-1 -1 -2n-1 (采用字长n=16位补码时其值为32767 -32768) (2). 定点小数小数点位置固定在数的符号位之后、数值最高位之前。 如:D0. D-1 D-(n-2) D-(n-1) 范围:1 - 2-(n-1) -1 (采用字长n=16位时其值为32767/32768 -1) 其中n表示字长多少位,2,(1) 浮点数的表示:是把字长分成阶码和尾数两部分。其根据就是: J Em-2.E0 S D-1D-(n-1) 阶符 阶码值 数符 . 尾数值

2、 S J Em-2 .E0 D-1D-(n-1) 数符 阶符 阶码值 . 尾数值 通常,阶码为补码或移码定点整数,尾数为补码或原码定点小数。,2. 数的浮点表示方法,3,(2)浮点数的规格化,目的:字长固定的情况下提高表示精度的措施: 1 增加尾数位数(但数值范围减小) 2 采用浮点规格化形式,4,规格化方法:调整阶码使尾数满足下列关系: 尾数为原码表示时,无论正负应满足1/2 d -1,即 1.0x.x,5,例题:设某机器用32位表示一个实数,阶码部分8位(含1位阶符),用定点整数补码表示;尾数部分24位(含数符1位),用规格化定点小数补码表示,基数为2。则:,1. 求X=256.5 的第一

3、种浮点表示格式 X=(256. 5)10 =+(100000000.1)2 =+(0.1000000001 x 2+9 )2 8位阶码为:(+9)补=0000 1001 24位尾数为:(+0.10 0000 0001)补 =0.100 0000 0010 0000 0000 0000 所求256.5的浮点表示格式为: 0000 1001 0100 0000 0010 0000 0000 0000 用16进制表示此结果则为:(09402000)16,6,Y=-(256. 5)10 =-(100000000.1)2 =-0.1000000001 x2+9 8位阶码为:(+9)补=0000 1001

4、 24位尾数为:(-0.10 0000 0001)补 =1.011 1111 1110 0000 0000 0000 所求-256.5的浮点表示格式为: 0000 1001 1011 1111 1110 0000 0000 0000 用16进制表示此结果则为:(09BFE000)16,2. 求Y= -256.5 的第一种浮点表示格式,7,(3) 溢出问题,定点数的溢出根据数值本身判断 浮点数的溢出根据规格化后的阶码判断 上溢浮点数阶码大于机器最大阶码 中断 下溢浮点数阶码小于机器最小阶码 零处理 溢出的具体判断方法将结合实例在后续课程中介绍,8,微机中所能表示的数值类型,(1)无符号二进制数(

5、字节、字和双字) (2)带符号的二进制定点整数形式(16、32、64位补码表示)和18位BCD码整数形式(80bit)。 (3)浮点数(IEEE754标准) 包括数符S、阶码E和尾数D三个字段。,9,微机中的四种整数类型,整数类型 数值范围 精 度 格 式 16位整数 -3276832767 二进制16位 补码表示 短整数 -231 231-1 二进制32位 补码表示 长整数 -263 263-1 二进制64位 补码表示 BCD整数 -1018+11018-1 十进制18位 80个二进制其中最左面1字节的最高位是符号位,余7位无效;另外72位是18位BCD码,原码表示。,10,IEEE754标

6、准格式如下,(-1)S 2E (D0.D-1D-(P-1) 最高是数符S占1位,0表示正、1表示负;指数项E,基数是2,E是一个带有一定偏移量的无符号整数;尾数部分D,它是一个带有一位整数位的二进制小数真值形式。其规格化形式应调整阶码使其尾数整数位D0为1且与小数点一起隐含掉。,11,12,微机中浮点数表示成规格化形式,如下图所示:,单精度 31 30 23 22 0 符号位 阶 码 尾数有效位 1 双精度 63 62 52 51 0 符号位 阶 码 尾数有效位 1 扩展精度 79 78 64 63 0 符号位 阶 码 尾数有效位 微机中浮点数的三种表示形式,13,例如将十进制数178.125

7、表示成微机中的单精度浮点数,解:178.125=10110010.001B =1.0110010001x27 指数E=7+127=134=10000110B 127是单精度浮点数应加的指数偏移量,其完整的浮点数形式为 : 0 10000110 011 0010 0010 0000 0000 0000 = 43322000H,14,例:将下面Pentium机中的单精度浮点数表示成十进制真值是多少? 0011 ,1111,0101,1000,0000,0000,0000,0000,数符:S=(-1) 0=1 (正号) 阶码: E=(01111110)2-127=126-127= -1 尾数: D=

8、(1.1011)2 X= 1.1011x2-1= (0.11011)2=0.84375,15,3.2.4 数字化信息的编码及表示,计算机进行数据处理和运算,就必须首先实现数字化表达。 另外由于计算机除了数据处理和运算外,还要进行各种文字(特别是中文)的处理与编辑。因此,所有由计算机处理的信息也要用数字进行编码。这样在物理机制上可以以数字信号表示.,16,信息的数字化表示形式,数字信号:是一种在时间上或空间上离散的信号,单个信号是常用的二值逻辑(0或1),依靠多位信号组合表示广泛的信息.,17,1.用一串脉冲信号表示数字代码 (先发低位后发高位为例),0,t,U,18,2.用一组电平信号表示数字

9、代码,19,3.用一组数字代码表示字符(如ASCII码) 4.用若干点的组合表示图像 (如图形点阵码) 5.用数字信号表示声音 (如VCD DVD光盘) 6.用数字代码表示命令与状态,20,数字化方法表示信息的优点:,抗干扰能力强,可靠性高; 位数增多则数的表示范围可扩大; 物理上容易实现,并可存储; 表示信息的范围与类型极其广泛; 能用逻辑代数等数字逻辑技术进行处理.,21,3.3 二进制乘法运算,1.软件编程方法实现(时序控制乘法器) 由手算到机器实现,要解决三个问题:符号问题、部分积相加进位问题、移位问题。 原码乘法是先取绝对值相乘,再根据同号相乘为正、异号相乘位负,单独决定符号位。补码

10、乘法则让符号位直接参加运算,算法将会复杂一些。 2.硬件快速乘法器实现 利用中大规模集成电路芯片,在一拍节中实现多项部分积的相加,成为阵列乘法器。,22,3.3.1 定点数一位乘法 1. 定点原码一位乘,规则:在机器中采用A,B,C寄存器来分别存放部分积,被乘数和乘数 (1)在机器内一次加法操作只能求出两数之和,因此每求得一个相加数时,就得与上次部分积相加。 (2)人工计算时,相加数逐次向左偏移一位,由于最后的乘积位数是乘数(或被乘数)的两倍.由于在求本次部分积时,前一次部分积的最低位,不再参与运算,因此可将其右移一位。相加数可直送而不必偏移,于是用N位加法器就可实现两个N位数相乘。 (3)部

11、分积右移时乘数寄存器同时右移一位,这样可以用乘数寄存器的最低位来控制相加数(取被乘数或零),同时乘数寄存器的最高位可接收部分积右移出来的一位,因此,完成乘法运算后,A寄存器中保存乘积的高位部分,乘数寄存器C中保存乘积的低位部分。,23,例:设X=0.1101,Y=0.1011,求XY. 其中寄存器B=X ,Cd=4.流程图3.6 计算过程如下:,1(丢失) 1(丢失) 0(丢失) 1(丢失),XY=0.10001111,24,注意: 两操作数的绝对值相乘, 符号位单独处理。 寄存器A.B均设置双符号位,第1符号位始终是部分积符号,决定在右移时第1符号位补0 操作步数由乘数的尾数位数决定,用计数

12、器Cd来计数。即作n次累加和移位。 最后是加符号位,根据SxSy决定。,25,2.定点补码一位乘法,实现补码乘法有两种方法,现在广泛使用的是Booth算法,也称为比较法。这种方法在机器实现中要在乘数末位Yi之后再增加一个附加位Yi+1,并令其初始值为0。然后根据比较Yi、 Yi+1的值决定下一步操作,规则如下:(部分积初始为0) Yi Yi+1 操 作 0 0 原部分积右移一位 0 1 原部分积加X补后再右移一位 1 0 原部分积加-X补后再右移一位 1 1 原部分积右移一位,26,27,初始值与符号位:A寄存器存放部分累加和,初始为0,采用双符号位。第1符号位指示累加和的正负,以控制右移时补

13、0或补1。B中存放被乘数的补码,双符号位。 基本操作:用C寄存器最末两位作判断位,决定下一步的操作。 移位:在右移时,第2符号位值移入位数的最高位,第1符号位值不变且移入第2符号位,而A寄存器末位移入C寄存器。 步数与最后一步操作:乘数有效位是4位,共作5步。注意,最后一步不移位因为这一步是用来处理符号位的。,28,3.4.1 定点除法运算,1.定点原码一位除法 有恢复余数法和不恢复余数法(加减交替法),计算机中常用后者。因为它的操作步骤少,而且也不复杂。其处理思想是:先减后判,如减后发现不够减,则在下一步改作加除数操作。这样操作步骤固定易于编程。其要点如下: (1)要求被除数|X|除数|Y|

14、,并取原码尾数的绝对值相除;符号位单独处理,商的符号为相除两数符号的半加和。 (2)被除数的位数可以是除数的两倍,其低位的数值部分开始时放在商寄存器中。运算中,放被除数和商的A、C寄存器同时移位,并将商寄存器C中最高位移到被除数寄存器A的最低位中。 (3)每步操作后,可根据余数Ri符号来判断是否够减:Ri位正表明够减,上商Q为1。Ri为负表明不够减,上商Q为0。 (4)基本操作可用通式描述为:Ri=2Ri+(1-2Qi)Y (5原码除的思想是先当成正数相除,若最后一步所得余数为负,则应恢复余数,但不移位,以保持Ri为正。 举例如下:,29,30,A寄存器中开始时存放被除数的绝对值,以后将存放各

15、次余数,取双符号位。B寄存器存放除数的绝对值,取双符号位。C寄存器同来存放商,取单符号位。 第一步操作:将被除数X视为初始余数R0,根据R0符号位正(绝对值),令商符为0,正是的商符以后再置入。第一步为-Y。 商值则根据余数R0的符号来决定,正则商上1,求下一位商的办法是余数左移一位再减去除数;当余数为负则商上0,求下一位商的办法是余数左移一位再加上除数。左移位时末位补0。 操作步数与最后一步操作:如果要求得n位商(不含符号位),则需作n步“左移-加减”循环;若第n步余数为负,则需增加一步恢复余数,这增加的一步不移位。,31,2.定点补码一位除法(加减交替法),补码除法规则表:X补、Y补、r补分别为被除数、除数和余数,32,以上是在|X|Y|即不溢出的前提下; (1)第一步如果被除数与除数同号,用被除数减去除数;若两数异号,用被除数加上除数。如果所得余数与除数同号上商1,若余数与除数异号,上商0,该商即为结果的符号位。 (2)求商的数值部分 如果上次上商1,将余数左移一位后减去除数;如果上次上商0,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号