学习啦>知识大全>知识百科>百科知识>

什么是浮点运算数据是怎样的

时间: 谢君787 分享

  浮点运算就是实数运算,因为计算机只能存储整数,那么你对浮点运算了解多少呢?以下是由学习啦小编整理关于什么是浮点运算的内容,希望大家喜欢!

  浮点运算的简介

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

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

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

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

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

  浮点运算的数据

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

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

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

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

  下面是其位数(bits)和能表示的大致范围和

  Type Length Range

  -----------------------------------------------

  Word Integer 16 bit -32768 to 32768

  Short Integer 32 bit -2.14e9 to 2.14e9

  Long Integer 64 bit -9.22e18 to 9.22e18

  Single Real 32 bit 1.18e-38 to 3.40e38

  Double Real 64 bit 2.23e-308 to 1.79e308

  extended Real 80 bit 3.37e-4932 to 1.18e4932

  Packed BCD 80 bit -1e18 to 1e18

  双精度数和扩展精度数表示范围对一般应用来说已经足够大了!

  1)整数,以补码形式存储,正数的补码是其本身,负数补码是其绝对值的各位变反后加1,下面是实际存储的例子:

  0024 var1 dw 24

  FFFE var2 dw -2

  000004D2 var3 dd 1234

  FFFFFF85 var4 dd -123

  0000000000002694var5 dq 9876

  2)BCD数

  在FPU中用80位表示正好是浮点堆寄存器的宽度,在其格式如下存储:

  Bit

  79___72_71________________________________________0

  符号 ---18个二十进制数——————————---

  看下面的例子:

  00000000000000012345 var1 dt 12345

  80000000000000000100 var2 dt -100

  3)浮点数,这个复杂点,有三种格式

  单精度:_31_30________23_22___________0

  符号 指数 有效数

  双精度:_63_62__________52_51__________________0

  符号 指数 有效数

  扩展精度数:

  _79_78____________64_63___________________0

  符号 指数 有效数

  浮点运算的格式

  单精度:_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
看过“浮点运算的数据”的人还看了:

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

2.什么是cpu浮点

3.2014年计算机三级《PC技术》考试要点

4.cpu指令由什么组成

5.手机cpu和电脑cpu有什么不同

6.CPU和主板是什么

什么是浮点运算数据是怎样的

浮点运算就是实数运算,因为计算机只能存储整数,那么你对浮点运算了解多少呢?以下是由学习啦小编整理关于什么是浮点运算的内容,希望大家喜欢! 浮点运算的简介 当我们用不同的电脑计算圆周率时,会发现一台电脑的计算较另一台来讲结果
推荐度:
点击下载文档文档为doc格式
1601871