什么是浮点运算
答案:1 悬赏:0 手机版
解决时间 2021-08-18 20:14
- 提问者网友:不爱我么
- 2021-08-18 05:48
浮点运算有什么作用
最佳答案
- 五星知识达人网友:孤老序
- 2021-08-18 06:21
来自百度百科:
整数和浮点运算性能测试浮点运算就是实数运算,因为计算机只能存储整数,所以实数都是约数,这样浮点运算是很慢的而且会有误差。现在大多数机器都是32位的,也就是说32位都用来表示整数的话,那么对于无符号整数就是0 到 2^32-1,对于有符号的话就是-2^31 到 2^31-1。
目录[隐藏]
- 浮点运算介绍
- 浮点运算数据
- 例子
- 其他
- 浮点运算数据
[编辑本段]浮点运算介绍 当我们用不同的电脑计算圆周率时,会发现一台电脑的计算较另一台来讲结果更加精确。或者我们在进行枪战游戏的时候,当一粒子弹击中墙壁时,墙上剥落下一块墙皮,同样的场面在一台电脑上的表现可能会非常的呆板、做作;而在另外一台电脑上就会非常生动形象,甚至与我们在现实中看到的所差无几。 这都是浮点运算能力的差异导致的。 如果是实数的话,就不是这样了,机器有两种办法表示实数,一种是定点,就是小数点位置是固定的,一种是浮点,就是小数点位置不固定,计算方法也比较麻烦,通常会比整数运算代价大很多 FPU->Floating Point Unit,浮点运算部件 BCD->Binary Coded Decimal 压缩的二十进制数,是用4个位来表示数字0~9,一个byte表示两个十进制数,比如01111001表示89 科学计数法:这是科学的~~~~具体含义查查初中还是小学的数学课本 D:) [编辑本段]浮点运算数据 浮点运算使用三种不同的数据: 1)整数(Integer),又分为字,短整数(Short Integer)和长整数(Long Integer) 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 符号 指数 有效数 [编辑本段]例子 计算机里整数和小数形式就是按普通格式进行存储,例如1024、3.1415926等等,这个没什么特点,但是这样的数精度不高,表达也不够全面,为了能够有一种数的通用表示法,就发明了浮点数。 浮点数的表示形式有点像科学计数法(*.*****×10^***),它的表示形式是0.*****×10^***,在计算机中的形式为 .***** e ±***),其中前面的星号代表定点小数,也就是整数部分为0的纯小数,后面的指数部分是定点整数。利用这样的形式就能表示出任意一个整数和小数,例如1024就能表示成0.1024×10^4,也就是 .1024e+004,3.1415926就能表示成0.31415926×10^1,也就是 .31415926e+001,这就是浮点数。浮点数进行的运算就是浮点运算。 浮点运算比常规运算更复杂,因此计算机进行浮点运算速度要比进行常规运算慢得多。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯