DSP系统实验02New-定点和浮点数格式_第1页
DSP系统实验02New-定点和浮点数格式_第2页
DSP系统实验02New-定点和浮点数格式_第3页
DSP系统实验02New-定点和浮点数格式_第4页
DSP系统实验02New-定点和浮点数格式_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

1、10/15/2021 20:37:51-1-2 2 定点和浮点数格式定点和浮点数格式 2.1 DSP的数据表示的数据表示 2.2 定点数的格式与运算定点数的格式与运算 2.3 浮点数的格式与运算浮点数的格式与运算10/15/2021 20:37:51-2-定点和浮点数格式定点和浮点数格式DSP的数据表示的数据表示2.1 DSP的数据表示的数据表示格式格式字长字长16位位32位位定点定点浮点浮点24位位10/15/2021 20:37:51-3-定点和浮点数格式定点和浮点数格式DSP的数据表示的数据表示格式和字长决定了数据的格式和字长决定了数据的精度精度和和动态范围动态范围格式和字长也在一定程度

2、上决定了格式和字长也在一定程度上决定了DSP处理器处理器的的成本成本、功耗功耗和和编程难度编程难度l定点运算的硬件实现比浮点运算的硬件实现简单定点运算的硬件实现比浮点运算的硬件实现简单l定点器件结构比浮点器件简单,成本低,功耗小,定点器件结构比浮点器件简单,成本低,功耗小,但定点器件编程比浮点器件困难,主要是需要注但定点器件编程比浮点器件困难,主要是需要注意数据的意数据的定标定标、溢出溢出,以及尽可能地,以及尽可能地减小误差减小误差等等l浮点器件结构复杂,成本高、功耗大,但运算精浮点器件结构复杂,成本高、功耗大,但运算精度高、编程方便,高级语言支持容易度高、编程方便,高级语言支持容易10/15

3、/2021 20:37:51-4-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算2.2 定点数的格式与运算定点数的格式与运算 1. 定点数的格式定点数的格式 1)Qn格式格式 2)数值范围与精度)数值范围与精度 3)动态范围)动态范围 2. 定点数的算术运算定点数的算术运算 1)定点数的加减法运算)定点数的加减法运算 2)定点数的乘法运算)定点数的乘法运算 3)定点数的除法运算)定点数的除法运算10/15/2021 20:37:51-5-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的格式定点数的格式Qn格式格式l 二进制补码数二进制补码数01

4、010011b,粗线表示隐含的小数点位置,粗线表示隐含的小数点位置lQ0格式:格式:01010011b126124121120 83 83/20lQ4格式:格式:01010011b12212012-312-4 5.1875 83/24lQ7格式:格式:01010011b12-112-312-612-70.648437583/27例:例:8位字长位字长位位7MSB6543210LSB二进制补码二进制补码01010011Q0符号符号26252423222120Q4符号符号2221202-12-22-32-4Q7符号符号2-12-22-32-42-52-62-71. 定点数的格式定点数的格式1)Qn

5、格式格式10/15/2021 20:37:51-6-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的格式定点数的格式Qn格式格式l 小数点小数点l 整数:小数点在数据的最低位(整数:小数点在数据的最低位(LSB)后面,位置固定、且)后面,位置固定、且是隐含的,小数点后有零个小数位是隐含的,小数点后有零个小数位l 小数:也可用小数点位置固定且隐含的二进制补码表示,只小数:也可用小数点位置固定且隐含的二进制补码表示,只是小数点的位置与整数不同是小数点的位置与整数不同Qn格式格式l Q标志:表示隐含的小数点的位置标志:表示隐含的小数点的位置l Qn格式的二进制数:小数点的

6、格式的二进制数:小数点的右边右边有有n个小数位个小数位l Q15格式:小数点后有格式:小数点后有15个小数位个小数位l Q8格式:小数点后有格式:小数点后有8个小数位个小数位l Q0格式:小数点后有零个小数位,也就是整数格式:小数点后有零个小数位,也就是整数10/15/2021 20:37:51-7-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的格式定点数的格式Qn格式格式定点数与浮点数、定点数与定点数之间的转换关系定点数与浮点数、定点数与定点数之间的转换关系l 浮点数浮点数X Qn格式的定点数格式的定点数Xnl例:例:5.1875 Q4定点数定点数l5.1875

7、24 83 01010011b(int)2nnXXl Qn格式的定点数格式的定点数Xn 为浮点数为浮点数Xl例:例: (Q7) 01010011b 浮点数浮点数l83/27 0.6484375(float)/2nnXXl Qn格式的定点数格式的定点数Xn Qm格式的定点数格式的定点数Xml例:例:(Q7) 01010011b Q4定点数定点数l83/27 0.6484375lint(0.6484375 24 ) int(10.375) 1000001010bl10/24 0.625 0.6484375(小数位数有限,产生(小数位数有限,产生截断误差截断误差)(int)/22(int)2nmm

8、nmnnXXX式中式中(int)表示取整,表示取整,浮点数转换浮点数转换为定点数时,为定点数时,由于小数点由于小数点后的位数有后的位数有限,会产生限,会产生截断误差截断误差10/15/2021 20:37:51-8-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的格式定点数的格式数值范围与精度l 给定字长给定字长N,采用,采用Qn格式表示小数格式表示小数l 数值范围:数值范围:l 精精 度:度:2)数值范围与精度)数值范围与精度1122122NNnn12nl N1是由于符号占用一位,数据占用是由于符号占用一位,数据占用N1位位l n越大,数值范围越小,但精度越高越大

9、,数值范围越小,但精度越高l n越小,数值范围越大,但精度越低越小,数值范围越大,但精度越低10/15/2021 20:37:51-9-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的格式定点数的格式数值范围与精度Qn格式格式数值范围数值范围精度精度Q15-10.9999694824218750.000030517578125Q14-21.999938964843750.00006103515625Q13-43.99987792968750.0001220703125Q12-87.9997558593750.000244140625Q11-1615.99951171

10、8750.00048828125Q10-3231.99902343750.0009765625Q9-6463.9980468750.001953125Q8-128127.996093750.00390625Q7-256255.99218750.0078125Q6-512511.9843750.015625Q5-10241023.968750.03125Q4-20482047.93750.0625Q3-40964095.8750.125Q2-81928191.750.25Q1-1638416383.50.5Q0-32768327671l 16位字长位字长Qn格式的数值范围与精度格式的数值范围与精

11、度10/15/2021 20:37:51-10-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的格式定点数的格式动态范围动态范围l 动态范围:数据表示格式中可以表示的最大值与最小值之比动态范围:数据表示格式中可以表示的最大值与最小值之比l N位定点数的动态范围:位定点数的动态范围:l 用分贝表示为:用分贝表示为:3)动态范围)动态范围l 定点数的动态范围只与字长定点数的动态范围只与字长N有关,字长增加一位,动态范有关,字长增加一位,动态范围增加围增加6dBl 16位定点数的动态范围约为位定点数的动态范围约为90.3dBl 32位定点数的动态范围约为位定点数的动态范围

12、约为186.6dB11(21) / 2211/ 2NnNfixnDR11020 log216.02(1) dBNfixDRN10/15/2021 20:37:51-11-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的格式定点数的格式动态范围动态范围l 动态范围:数据表示格式中可以表示的最大值与最小值之比动态范围:数据表示格式中可以表示的最大值与最小值之比定点定点DSP处理器大多采用处理器大多采用16位定点数位定点数l 与浮点数相比,定点数运算的硬件实现较为简单与浮点数相比,定点数运算的硬件实现较为简单l 16位定点数可以提供足够大的动态范围(位定点数可以提供足够大

13、的动态范围(90dB),这对于大多数的),这对于大多数的应用已经足够了应用已经足够了l 对于要求更大动态范围的应用,可以采用扩展字长的方式,对于要求更大动态范围的应用,可以采用扩展字长的方式,即用两个或更多的字来表示数据即用两个或更多的字来表示数据l 如:用两个如:用两个16位数表示一个数据,则字长为位数表示一个数据,则字长为32位位l 扩展字长通常会导致编程复杂度和程序运行时间增加扩展字长通常会导致编程复杂度和程序运行时间增加l 定点定点DSP处理器要求编程时要仔细考虑信号幅值和中间结处理器要求编程时要仔细考虑信号幅值和中间结果,在避免溢出和尽可能减小舍入误差的前提下,使精度和果,在避免溢出

14、和尽可能减小舍入误差的前提下,使精度和动态范围最大化动态范围最大化 10/15/2021 20:37:51-12-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的算术运算定点数的加减法运算定点数的加减法运算2. 定点数的算术运算定点数的算术运算1)定点数的加减法运算)定点数的加减法运算l 相同的相同的Qn格式,保证隐含的小数点对齐格式,保证隐含的小数点对齐l 最可能出现的问题是运算结果的溢出最可能出现的问题是运算结果的溢出l 例:两个例:两个8位数相加,无溢出位数相加,无溢出l 进位位(进位位(C)与最高位()与最高位(MSB)相同,)相同,进位位进

15、位位仅代表仅代表附加的符附加的符号位号位,可以,可以忽略忽略l 8位字长可以表示结果,没有发生数据溢出位字长可以表示结果,没有发生数据溢出11111100b( -4)00101001b( 41)+ 11111110b( -2)+ 00110011b( 51)111111010b( -6)001011100b( 92)10/15/2021 20:37:51-13-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的算术运算定点数的加减法运算定点数的加减法运算l 例:两个例:两个8位数相加,有溢出位数相加,有溢出l 进位位(进位位(C)与最高位()与最高位(

16、MSB)不同,)不同,符号位到了进符号位到了进位位中,最高位成为数值的一部分位位中,最高位成为数值的一部分l 运算结果发生溢出,运算结果发生溢出,8位字长已不能正确地表示结果位字长已不能正确地表示结果10110000b( -80)00101001b( 41)+ 10111111b( -65)+ 01110011b(115)非饱和模式:非饱和模式:101101111b(-145)非饱和模式:非饱和模式:010011100b(156)饱和模式:饱和模式:110000000b(-128)饱和模式:饱和模式:001111111b(127)10/15/2021 20:37:51-14-定点和浮点数格式定

17、点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的算术运算定点数的加减法运算定点数的加减法运算l 溢出是由于字长有限,运算结果超出数值的表示范围引溢出是由于字长有限,运算结果超出数值的表示范围引起的起的l 饱和模式饱和模式l 定点数减法运算的原理与加法运算相同定点数减法运算的原理与加法运算相同 在饱和模式下,溢出数据用带有正确符号的最大在饱和模式下,溢出数据用带有正确符号的最大值填充,相当于对运算结果进行了限幅,使结果值填充,相当于对运算结果进行了限幅,使结果不会超出数值的表示范围不会超出数值的表示范围 为减少溢出引起的计算错误,为减少溢出引起的计算错误,DSP处理器一

18、般都处理器一般都有饱和模式有饱和模式10/15/2021 20:37:51-15-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的算术运算定点数的乘法运算定点数的乘法运算2)定点数的乘法运算)定点数的乘法运算l DSP处理器都有硬件乘法器和乘法指令,可实现单周期乘处理器都有硬件乘法器和乘法指令,可实现单周期乘法运算法运算l 二进制乘法运算包含一系列的移位和加法运算二进制乘法运算包含一系列的移位和加法运算l 定点数乘法运算不要求相乘数有相同的定点数乘法运算不要求相乘数有相同的Qn格式格式l 两个相乘数分别为两个相乘数分别为Qn和和Qm格式,字长为格式,

19、字长为N,结果为,结果为Q(n+m)格式,字长为格式,字长为2Nl 根据根据n和和m的不同取值,定点数乘法运算可以分成三种情况的不同取值,定点数乘法运算可以分成三种情况l 小数乘小数(小数乘小数(n、m0,m n)l 整数乘小数(整数乘小数(n0、m=0)l 整数乘整数(整数乘整数(n=m=0) 10/15/2021 20:37:51-16-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的算术运算定点数的乘法运算定点数的乘法运算 小数乘小数(小数乘小数(n、m0,m n)l 例:两个相乘数分别为例:两个相乘数分别为Q7和和Q6格式,格式,8位字长位字

20、长l 例中间隐含的例中间隐含的小数点显示地标出小数点显示地标出l 结果为结果为Q13格式,字长为格式,字长为16位,最高两位为两个符号位位,最高两位为两个符号位l 将结果左移一位,移出一个符号位,得到将结果左移一位,移出一个符号位,得到Q14格式的结果格式的结果l 保存结果的高保存结果的高8位,即乘法器输出的高位,即乘法器输出的高8位,结果为位,结果为Q6格式格式l 两个定点小数作乘法运算,结果左移一位,保存高位得到两个定点小数作乘法运算,结果左移一位,保存高位得到运算结果,结果为运算结果,结果为Qm(m n)格式)格式 0.1000000b(0.5 Q7 ) 01.100000b(1.5 Q

21、6 )000.1100000000000b(0.75 Q13)左移一位:00.11000000000000b(0.75 Q14)取高8位: 00.110000b(0.75 Q6 )10/15/2021 20:37:51-17-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的算术运算定点数的乘法运算定点数的乘法运算 整数乘小数(整数乘小数(n0、m=0)l 例:两个相乘数分别为例:两个相乘数分别为Q7和和Q0格式,格式,8位字长位字长l 例中间隐含的例中间隐含的小数点显示地标出小数点显示地标出l 结果为结果为Q7格式,字长为格式,字长为16位,结果的最

22、高两位为两个符号位位,结果的最高两位为两个符号位l 将结果左移一位,移出一个符号位,得到将结果左移一位,移出一个符号位,得到Q8格式的结果格式的结果l 保存结果的高保存结果的高8位,即乘法器输出的高位,即乘法器输出的高8位,结果为位,结果为Q0格式格式 l 运算结果为运算结果为-3.5,但由于只保存高,但由于只保存高8为,结果为为,结果为-3,产生误差,误差,产生误差,误差是由于丢弃低是由于丢弃低8位造成的截尾误差位造成的截尾误差0.1000000b(0.5 Q7) 11111001.b(-7 Q0)111111100.1000000b(-3.5 Q7)左移一位:11111100.100000

23、00b(-3.5 Q8)取高8位: 11111100.b(-3. Q0)10/15/2021 20:37:51-18-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的算术运算定点数的乘法运算定点数的乘法运算l 误差小于等于误差小于等于Qn格式精度的一半,即小于等于格式精度的一半,即小于等于1/2n+1l 单次计算的误差并不大,但如果是连续的运算,则误差会单次计算的误差并不大,但如果是连续的运算,则误差会累积和传递,从而产生比较大的误差累积和传递,从而产生比较大的误差l 在递归算法中,误差可能带来很大的影响,甚至导致算法在递归算法中,误差可能带来很大的

24、影响,甚至导致算法的不稳定的不稳定l DSP处理器提供了自动舍入功能来减小误差,而不是简单处理器提供了自动舍入功能来减小误差,而不是简单的丢弃低的丢弃低16位位l 通常为减小计算误差,定点通常为减小计算误差,定点DSP处理器处理器编程时编程时对中间结果对中间结果保留整个保留整个32位,只有最后结果才舍弃低位,只有最后结果才舍弃低16位,保留高位,保留高16位位l 小数乘小数、整数乘小数运算都要求对乘积结果左移一位小数乘小数、整数乘小数运算都要求对乘积结果左移一位后,保存高位后,保存高位l DSP处理器带有可选的处理器带有可选的自动左移一位自动左移一位的功能,消除移位操的功能,消除移位操作的时间

25、开销作的时间开销10/15/2021 20:37:52-19-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的算术运算定点数的乘法运算定点数的乘法运算 整数乘整数(整数乘整数(n=m=0)l 例:两个相乘数都为例:两个相乘数都为Q0格式,格式,8位字长位字长l 例中间隐含的例中间隐含的小数点显示地标出小数点显示地标出l 结果为结果为Q0格式,字长格式,字长16位位l 若结果没有超出若结果没有超出8位数的表示范围时,结果在低位数的表示范围时,结果在低8位,保存低位,保存低8位位l 若结果超出若结果超出8位数的表示范围时,则高位数的表示范围时,则高8位也

26、包含乘积结果,应保存位也包含乘积结果,应保存整个整个16位结果位结果l 结果是否超出结果是否超出8位数的表示范围,可通过查询对应的标志位得到位数的表示范围,可通过查询对应的标志位得到l 整数相乘,结果为整数相乘,结果为Q0格式,需查询标志位确定保存的位数,格式,需查询标志位确定保存的位数,结果不需要左移一位结果不需要左移一位11111100.b(-4 Q0) 11111001.b(-7 Q0)0000000000011100.b(28 Q0)取低8位: 00011100.b(28 Q0)10/15/2021 20:37:52-20-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式

27、与运算定点数的算术运算定点数的算术运算定点数的除法运算定点数的除法运算3)定点数的除法运算)定点数的除法运算l 大多数大多数DSP处理器不提供单周期除法指令处理器不提供单周期除法指令l 除法是乘法的逆运算,包括一系列移位和条件减法运除法是乘法的逆运算,包括一系列移位和条件减法运算,需要用除法子程序实现算,需要用除法子程序实现l 例:例:8位字长的正整数相除位字长的正整数相除l 被除数为被除数为00001010b(10)l 除数为除数为00000011b(3)10/15/2021 20:37:52-21-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的

28、算术运算定点数的除法运算定点数的除法运算l 除数左移一位,使被除数小于除数的除数左移一位,使被除数小于除数的2倍倍l 被除数减除数,结果为正,商数的最低位置被除数减除数,结果为正,商数的最低位置1 00001010b 00000110b商数:00000001 余数:00000100bl 将余数左移一位减除数,结果为正,商数左移一位,最低位置将余数左移一位减除数,结果为正,商数左移一位,最低位置1 00001000b 00000110b商数:00000011 余数:00000010b10/15/2021 20:37:52-22-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算

29、定点数的算术运算定点数的算术运算定点数的除法运算定点数的除法运算l 除数左移一位,使被除数小于除数的除数左移一位,使被除数小于除数的2倍数,结果为负,商数左倍数,结果为负,商数左移一位,最低位置移一位,最低位置0,丢弃余数,余数取被减数值,丢弃余数,余数取被减数值l 将余数左移一位减除数,结果为正,商数左移一位,最低位置将余数左移一位减除数,结果为正,商数左移一位,最低位置100000100b 00000110b余数(丢弃):11111110b商数:00000110 余数:00000100b00001000b 00000110b商数:00001101 余数:00000010b10/15/202

30、1 20:37:52-23-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的算术运算定点数的除法运算定点数的除法运算l 将余数左移一位减除数,结果为负,商数左移一位,最低位置将余数左移一位减除数,结果为负,商数左移一位,最低位置0,丢弃余数,余数取被减数值丢弃余数,余数取被减数值l 将余数左移一位减除数,结果为正,商数左移一位,最低位置将余数左移一位减除数,结果为正,商数左移一位,最低位置100000100b 00000110b余数(丢弃):11111110b商数:00011010 余数:00000100b00001000b 00000110b商数:

31、 00110101 余数:00000010b10/15/2021 20:37:52-24-定点和浮点数格式定点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的算术运算定点数的除法运算定点数的除法运算l 将余数左移一位减除数,结果为负,商数左移一位,最低位置将余数左移一位减除数,结果为负,商数左移一位,最低位置0,丢弃余数,余数取被减数值,从而得到丢弃余数,余数取被减数值,从而得到Q6格式的商数格式的商数01.101010b和余数和余数00.000100bl 由于第步曾对除数左移一位,因此应对结果的小数点右移一由于第步曾对除数左移一位,因此应对结果的小数点右移一位,得到位

32、,得到Q5格式的结果格式的结果011.01010b(3.3125),最高位),最高位MSB为符为符号位号位 00000100b 00000110b余数(丢弃):11111110b商数: 01101010 余数:00000100bl 计算中,共进行了计算中,共进行了7次移位和条件减操作,得到次移位和条件减操作,得到8位(位(1个符号位和个符号位和7个数据位)的结果个数据位)的结果l 要增加精度,可以增加移位和条件减的次数,如要增加精度,可以增加移位和条件减的次数,如15次移次移位和条件减可以得到位和条件减可以得到16位的结果位的结果10/15/2021 20:37:52-25-定点和浮点数格式定

33、点和浮点数格式定点数的格式与运算定点数的格式与运算定点数的算术运算定点数的算术运算定点数的除法运算定点数的除法运算l 对于两个正的小数相除(对于两个正的小数相除(Qn格式除以格式除以Qm格式)格式)l 如如Q3格式的格式的00001.010b(1.25)除以)除以Q2格式的格式的000000.11b(0.75)l 把两个正的小数看作两个把两个正的小数看作两个Q0格式的正整数相除,即格式的正整数相除,即00001010b(10)除以)除以00000011b(3)l 与上面例子相同,结果为与上面例子相同,结果为Q5格式格式011.01010bl 最后对结果的小数点位置移最后对结果的小数点位置移n-

34、m 位(若位(若n-m0 则左移,若则左移,若n-m0,则结果的小数点左移一位,最后结果为,则结果的小数点左移一位,最后结果为Q6格式格式01.101010b(1.65625)l 如果除法运算中包含负数,应将负数变换为等值的正数,如果除法运算中包含负数,应将负数变换为等值的正数,然后作除法运算,最后加上正确的符号然后作除法运算,最后加上正确的符号l 除法运算的最优实现依赖于除法运算的最优实现依赖于DSP处理器处理器 10/15/2021 20:37:52-26-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算2.3 浮点数的格式与运算浮点数的格式与运算 1. 浮点数的格式浮

35、点数的格式 - 1)IEEE754浮点数格式浮点数格式 - 2)TMS320C3X浮点数格式浮点数格式 - 3)浮点数的数值范围、精度和)浮点数的数值范围、精度和动态范围动态范围 2. 浮点数的算术运算浮点数的算术运算 - 1)浮点数的加减法运算)浮点数的加减法运算 - 2)浮点数的乘法运算)浮点数的乘法运算 - 3)浮点数的除法运算)浮点数的除法运算10/15/2021 20:37:52-27-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算浮点数的格式浮点数的格式l 浮点数表示为尾数和指数的形式浮点数表示为尾数和指数的形式l 式中,式中,m 为尾数,为尾数,e 为指数为

36、指数l 符号、尾数和指数编码在同一个二进制字中符号、尾数和指数编码在同一个二进制字中1. 浮点数的格式浮点数的格式l 符号、尾数和指数的位数和位域不同,浮点数格式不符号、尾数和指数的位数和位域不同,浮点数格式不同,常用的浮点数格式有同,常用的浮点数格式有l IEEE754标准定义的单精度格式和双精度格式标准定义的单精度格式和双精度格式l TI公司定义的公司定义的TMS320C3X浮点数格式浮点数格式 2exm 10/15/2021 20:37:52-28-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算浮点数的格式浮点数的格式IEEE754浮点数格式浮点数格式1)IEEE7

37、54浮点数格式浮点数格式l 单精度格式单精度格式l 扩展单精度格式扩展单精度格式l 双精度格式双精度格式l 扩展双精度格式扩展双精度格式l 浮点浮点DSP处理器中,处理器中,32位单精度格式用的最多位单精度格式用的最多l 有些有些32位浮点位浮点DSP处理器具有额外的硬件,支持对处理器具有额外的硬件,支持对扩展单精度、甚至双精度格式浮点数的处理扩展单精度、甚至双精度格式浮点数的处理 10/15/2021 20:37:52-29-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算浮点数的格式浮点数的格式IEEE754浮点数格式浮点数格式l 最高位(第最高位(第31位)为符号位位

38、)为符号位sl 尾数尾数f 占用低占用低23位位l 指数指数e占用中间占用中间8位,取值范围为位,取值范围为0255l 表示的数值表示的数值 e-12712611.2125410.20,000,01255,0255,0sssfefefxefefNaNef 10/15/2021 20:37:52-30-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算浮点数的格式浮点数的格式IEEE754浮点数格式浮点数格式l 通常情况,即通常情况,即 1 e 254 时时l 尾数做了归一化,为尾数做了归一化,为1.f 格式的数,格式的数,f 是尾数的小数部分,最左边一是尾数的小数部分,最左边

39、一位总是位总是1,所以不需要存储该位,所以不需要存储该位,1是隐含的是隐含的l 23位的尾数实际上存放的是位的尾数实际上存放的是24位的尾数位的尾数l 为使尾数归一化,符合为使尾数归一化,符合1.f 格式,指数要适当增减,跟踪归一化所格式,指数要适当增减,跟踪归一化所需的小数点左右移动的位数需的小数点左右移动的位数l 指数域有偏移,指数域有偏移,8位指数位指数e偏移偏移127后,指数值的范围为后,指数值的范围为-126+127l 四种特殊情况四种特殊情况l 当当 e=0、f0 时,尾数是个非归一化的数时,尾数是个非归一化的数l 当当 e=0、f=0 时,时,x=0l 当当 e=255、f=0

40、时,时,x为正(为正(s=0)或负()或负(s=1)的无穷大)的无穷大l 当当 e=255、f0 时,时,x为一个无效数(为一个无效数(NaNNot a Number) e-12711.2sxf-12610.2sxfl 最高位(第最高位(第31位)为符号位位)为符号位s10/15/2021 20:37:52-31-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算浮点数的格式浮点数的格式IEEE754浮点数格式浮点数格式l 32位单精度浮点数位单精度浮点数1100,0011,0101,0010,0000,0000,0000,0000bl 符号位符号位 s1,表示是一个负数,表

41、示是一个负数l 指数指数 e1000,0110b=134l 尾数尾数 f101,0010,0000,0000,0000,0000b=0.640625l 浮点数浮点数 1.6406252 (134127)210.0l 32位单精度浮点数位单精度浮点数0011,1101,0011,1110,0000,0000,0000,0000bl 符号位符号位 s0,表示是一个正数,表示是一个正数l 指数指数 e0111,1010b=122l 尾数尾数 f011,1110,0000,0000,0000,0000b=0.484375l 该浮点数该浮点数 1.4843752 (122127)0.0463867187

42、5l 例例10/15/2021 20:37:52-32-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算浮点数的格式浮点数的格式IEEE754浮点数格式浮点数格式l许多许多32位浮点位浮点DSP处理器具有处理器具有40位的运位的运算单元,可以进行扩展单精度格式的浮算单元,可以进行扩展单精度格式的浮点运算点运算l扩展单精度格式与单精度格式的区别是,扩展单精度格式与单精度格式的区别是,扩展单精度格式的尾数增加了扩展单精度格式的尾数增加了8位,达位,达到到31位位 10/15/2021 20:37:52-33-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算浮

43、点数的格式浮点数的格式TMS320C3X浮点数格浮点数格式式2)TMS320C3X浮点数格式浮点数格式l 16位短浮点格式位短浮点格式l 32位单精度格式位单精度格式l 40位扩展精度格式位扩展精度格式l 32位单精度浮点数格式用的最多位单精度浮点数格式用的最多10/15/2021 20:37:52-34-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算浮点数的格式浮点数的格式TMS320C3X浮点数格浮点数格式式l 高高8位为指数位为指数e,指数域是二进制补码数,可以直接表示正负指数,指数域是二进制补码数,可以直接表示正负指数l 第第23位为符号位位为符号位sl 分数位分

44、数位f 占用低占用低23位位l 符号位和分数位和起来成为尾数符号位和分数位和起来成为尾数m,尾数是归一化的二进制补码数,尾数是归一化的二进制补码数l 表示的数值表示的数值 e2.222.sesxfmmf10/15/2021 20:37:52-35-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算浮点数的格式浮点数的格式浮点数的数值范围、精度和动态范浮点数的数值范围、精度和动态范围围3)浮点数的数值范围、精度和动态范围)浮点数的数值范围、精度和动态范围l 以以IEEE754单精度浮点数为例单精度浮点数为例l 数值范围数值范围l 不考虑不考虑s,当,当e=254,f 为全为全1

45、l 最大的数(最大的数(12-23)2127=1.7014121038,加,加上符号就对应为正的和负的最大数上符号就对应为正的和负的最大数l IEEE754单精度浮点数的数值范围为,单精度浮点数的数值范围为,l 1.70141210381.701412103810/15/2021 20:37:52-36-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算浮点数的格式浮点数的格式浮点数的数值范围、精度和动态范浮点数的数值范围、精度和动态范围围l 精度精度l 尾数尾数 f 为为23位,位, f 变化的最小值为变化的最小值为1/2 23l 与定点数不同,这个最小值并不是浮点数的精与

46、定点数不同,这个最小值并不是浮点数的精度,精度还与指数有关度,精度还与指数有关l 浮点数的精度是变化的,与数值的大小有关浮点数的精度是变化的,与数值的大小有关l 定点数的数值是等间隔的定点数的数值是等间隔的l 由于指数项的存在,浮点数的变化不是等间隔的,由于指数项的存在,浮点数的变化不是等间隔的,指数大、数值大、数值间隔也大;相反,指数小、指数大、数值大、数值间隔也大;相反,指数小、数值小、数值间隔也小数值小、数值间隔也小10/15/2021 20:37:52-37-定点和浮点数格式定点和浮点数格式浮点数的格式与运算浮点数的格式与运算浮点数的格式浮点数的格式浮点数的数值范围、精度和动态范浮点数的数值范围、精度和动态范围围l 最大数(最大数(12-

温馨提示

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

评论

0/150

提交评论