标题:
浮点数的转换与使用
[打印本页]
作者:
leslen
时间:
2010-10-17 15:43
标题:
浮点数的转换与使用
在计算机中,浮点数一般由三部分组成:数值的符号位、阶码和有效数字(以后简称为尾数)。这种浮点数是用科学记数法来表示的,即:浮点数=符号位.有效数字×2阶码。
Intel系列的协处理器支持3种形式的浮点数:短型浮点数(32位)、长型浮点数(64位)和临时浮点数(80位),它们分别对应单精度、双精度和扩展精度浮点数。
十进制数转换成浮点数的步骤
1、将十进制数转换成二进制数:整数部分用2来除,小数部分用2来乘;
2、规格化二进制数:改变阶码,使小数点前面仅有第一位有效数字;
3、计算阶码:
◆ 短型浮点数的阶码加上偏移量7FH
◆ 长型浮点数的阶码加上偏移量3FFH
◆ 扩展型浮点数的阶码加上偏移量3FFFH
4、以浮点数据格式存储。
把数值的符号位、阶码和尾数合在一起就得到了该数的浮点存储形式。
注意:尾数是带有一个隐含位的23位数,即:数“1.XXXX”的尾数是“XXXX”,前面的”1”被隐含掉,它只在扩展精度的格式中才被显式表示出来。
例11.1 把十进制数100.25转换成协处理器中的浮点数
解:
1、进制转换:(100.25)10=(1100100.01)2
2、规格化:(1100100.01)2=1.10010001×26=1.10010001×2110
3、计算阶码:110+01111111=10000101
4、数值的符号位为0,阶码为:10000101,尾数为:1001 0001 0000 0000 0000 000
综合上述可得:(100.25)10的浮点形式为:0 10000101 10010001000000000000000
欢迎光临 珩源工控论坛 (http://bbs.hymcu.com/)
Powered by Discuz! 7.2