您现在的位置:小学生自学网>> 信息>> pascal语言>> 基础教程

Pascal各语句运行速度比较

作者: 来源: 发布时间:2009年05月12日 点击数:
 

以下结果在总线133MHz,CPU 866MHz, Windows 98 第二版, 用 Turbo Pascal 7.0 的环境下得.

编译指示:

{$A+,B-,D-,E+,F-,G+,I-,L-,N+,O-,P+,X+,Y-,Q-,R-,S-,T-,V-}
  {$M 65520,0,655360}

算术函数,逻辑,判断
 

 

数据类型

函数名

Integer LongInt Real Single Double Extended Comp
:= 赋值 1.49 3.85 5.11 14.80 14.70 18.40 23.68
-  相反数 1.62 5.01 194.00 13.80 16.00 11.80 17.20
 + 或 - 2.33 5.41 290.00 15.50 18.60 13.10 27.68
* 3.26 79.10 290.00 17.70 21.00 13.00 29.30
/     330.00 60.10 60.10 62.30 68.90
Abs() 3.18 6.88 196.00 13.50 14.50 12.30 17.10
Ln()     1054.00 872.00 872.00 872.00 875.00
Exp()     1319.00 1149.00 1150.00 1150.00 1159.00
Sqr()     196.00 18.30 16.40 12.60 17.30
Sqrt()     330.00 153.00 153.00 156.00 161.00
sin()     1260.00 1100.00 1070.00 1100.00 1120.00
cos()     1320.00 1120.00 1050.00 1050.00 1000.00
ArcTan()     1129.00 790.00 795.00 900.00 800.00
Frac()     323.00 147.00 143.00 144.00 144.00
Trunc()     219.00 128.00 128.00 129.00 134.00
Int()     328.00 141.00 142.00 142.00 145.00
Round()     185.00 92.00 89.00 97.00 98.00
               
               
               
Inc()或Dec() 6.36 5.11          
Div 26.50 129.00          
Mod 29.10 129.00          
pred或succ 1.43 5.00          
shr或shl 2.53 70.50          
and 2.42 5.60          
or 2.47 5.71          
not 1.72 4.31          
xor 2.41 5.62          
               
> 13.42 4.61 234.00 38.10 38.50 34.80 32.00
< 3.53 6.43 224.00 29.30 29.30 34.32 39.10
<= 14.00 7.69 228.70 40.32 39.80 50.82 46.92
>= 3.51 6.37 224.00 29.30 29.30 34.10 40.10
= 3.52 5.55 219.00 23.30 29.10 34.50 40.30
<> 13.60 4.45 230.00 40.00 40.30 50.72 46.90
               
               
SizeOf() 1.42 1.42 1.42 1.42 1.42 1.42 1.42
               
 
*   计算三角函数的时间因数据变化而产生的变化约±10% 
*   Trunc 函数测速格式:LongInt:=Trunc(anyType)
*   Round函数测速格式:LongInt:=Round(anyType)
*   判断操作格式  boolean:=anyType  anyOperation   anyType
*   形如:c:=a anyOperation c  的操作并不比  c:=a anyOperation b 快。
*   越快的运算其 运算时间 的精度越难保证,例如 :=  (赋值)运算,误差可能高达 ±100%
*   所有数据的第一位有效数字以后的仅供参考。
*   所有 运算时间 包括赋值。

它的 Excal 版

总结

对于实数的运算,Extended 类型表现极好,不仅精度高,而且运算时间与其它实数类型相差很小,甚至过之。

对于整数运算,整体来说 LongInt 比 Integer 慢一倍,但是 shl,shr,>,<=,<>  运算是例外。