经典汇编语言教程:11.1 浮点数转化为十进制数

11.1 浮点数转化为十进制数

二、浮点数转换成十进制数的步骤

该步骤与前面“十进制数转换成浮点数”的步骤是互逆的,其具体步骤如下:
1、分割数字的符号、阶码和有效数字;
2、将偏移阶码减去偏移,得到真正的阶码;
3、把数字写成规格化的二进制数形式;
4、把规格化的二进制数改变成非规格化的二进制数;
5、把非规格化的二进制数转换成十进制数。

例11.2 把协处理器中的浮点数1100000111001001000000000000转换成十进制数

1、把浮点数1100000111001001000000000000分割成三部分,可得:

     符号位是1,阶码是10000011,尾数是1001001000000000000

2、还原阶码:10000011 – 01111111=100

3、该浮点数的规格化形式:1.1001001×24 (其中前面的“1.”从隐含位而来)

4、该浮点数的非规格化形式:11001.001

5、该浮点数的十进制数为-25.125 (因为符号位为1,所以,该数是负数)

下面是学习和掌握十进制数转化为浮点数的控件,它可按步骤演示整个转换过程。

三、浮点数说明形式

在汇编语言中,可用DD、DQ和DT来分别说明单精度、双精度和扩展精度的浮点数。

在MASM6.0系统中,正浮点数前面不能书写'+',但MASM6.11系统更正了这种错误,并提供了新的浮点数说明方法,即:可用REAL4、REAL8和REAL10来分别代替DD、DQ和DT。

在定义浮点数时,要使用伪指令.8087、.287或.387等。

例如:

.387

data1

DD

123, -543

;定义单精度浮点数

data2

REAL4

3.345E+3

;定义单精度浮点数

data3

REAL8

321.545

;定义双精度浮点数

data4

REAL10

254.555

;定义扩展精度浮点数

上页:上一课 下页:下一课

经典汇编语言教程·相关目录

第1章 汇编语言的由来,数据类型第2章 CPU资源和存储器
第3章 操作数的寻址方式第4章 标识符和表达式
第5章 微机CPU的指令系统第6章 程序的基本结构
第7章 子程序和库第8章 输入输出和中断
第9章 宏第10章 应用程序设计
第11章 数值运算协处理器第12章 汇编语言和C语言
汇编语言重要附录Windows API函数大全
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号