什么是浮点运算 浮点运算的格式

2017-02-27

浮点运算就是实数运算,因为计算机只能存储整数,所以实数都是约数,这样浮点运算是很慢的而且会有误差。那么你对浮点运算了解多少呢?以下是由小编整理关于什么是浮点运算的内容,希望大家喜欢!

什么是浮点运算

当我们用不同的电脑计算圆周率时,会发现一台电脑的计算较另一台来讲结果更加精确。或者我们在进行枪战游戏的时候,当一粒子弹击中墙壁时,墙上剥落下一块墙皮,同样的场面在一台电脑上的表现可能会非常的呆板、做作;而在另外一台电脑上就会非常生动形象,甚至与我们在现实中看到的所差无几。这都是浮点运算能力的差异导致的。

如果是实数的话,就不是这样了,机器有两种办法表示实数,一种是定点,就是小数点位置是固定的,一种是浮点,就是小数点位置不固定,计算方法也比较麻烦,通常会比整数运算代价大很多

FPU->Floating Point Unit,浮点运算部件

BCD->Binary Coded Decimal 压缩的二进制数,是用4个位来表示数字0~9,一个byte表示两个十进制数,比如1001111表示79

科学计数法:a×10的n次幂的形式。将一个数字表示成 (a×10的n次幂的形式),其中1≤|a|<10,n表示整数,这种记数方法叫科学记数法

浮点数的介绍

在这之前,先来看几个术语:

FPU->Floating Point Unit,浮点运算部件

BCD->Binary Coded Decimal 压缩的二十进制数,是用4个位来表示数字0~9,一个byte表示两个十进制数,比如01111001表示89

浮点运算使用三种不同的数据:

1、整数(Integer),又分为字,短整数(Short Integer)和长整数(Long Integer)

2、实数(Real)分单精度(Single Real)和双精度(Double Real)

3、压缩的二十进制数(BCD)

浮点运算的格式

单精度:_31_30________23_22___________0

符号 指数 有效数

双精度:_63_62__________52_51__________________0

符号 指数 有效数

扩展精度数: _79_78____________64_63___________________0

符号 指数 有效数

例子:

C377999A var1 dd -247.6

40000000 var2 dd 2.0

486F4200 var3 real4 2.45e+5

4059100000000000 var4 dq 100.25

3F543BF727136A40 var5 real8 0.00123

C377999A var1 dd -247.6

40000000 var2 dd 2.0

486F4200 var3 real4 2.45e+5

4059100000000000 var4 dq 100.25

3F543BF727136A40 var5 real8 0.001235

400487F34D6A161E4F76 var6 real10 33.9876

DD和real4都可以在asm中来定义单精度浮点数,4 bytes

DQ和real8都可以在asm中来定义双精度浮点数,8 bytes

DT和real10都可以在asm中来定义扩展精度浮点数,10 bytes

更多相关阅读

最新发布的文章