您的位置:首页 > 其它

如何提高程序的执行效率

2010-04-16 22:43 465 查看
一.尽量使用整数,少用浮点数

整数运算比浮点数快得多。

二.避免乘法与除法

乘法与除法都是相当浪费CPU运算时间的一种运算,在无法避免时,如果乘除的数目为2次方, 例如2、4、8、16等,则可改用左移或右移来取代:

a*2^n-->a<<n 例:a*16-->a<<4

a/2^n-->a>>n 例:a/32-->a>>5

上式中2^n表示2的n次方。

三.少用求模运算

求模的运算(%)通常也是用乘除来完成的,所以速度很慢,我们也要尽量避免,当然如果除数为2的次方,那么可以改 用&来替代:

a%2^n --> a&(2^n-1)

例:a%8 --> a&0x07

注意,如果除数不是2的次方,绝不能用&来替代。

四.使用寄存器变量

寄存器的存取速度要比内存快,一般c/c++编译器都至少提供1~2个寄存器变量给程序使用,我们应该将使用最频繁的变量 定义成寄存器变量,这样可以加快执行效率,例如:

register int i;

for( i=0; i<3000; i++ )

*(p+i) = 0x0f;

五. s=0;

for(i=1;i<=5;++i)

for(j=1;j<=100;++j)

++s;

++i和i++的区别是前者直接将变量加1返回,而后者先保存变量值,再加1,之后返回,差两个指令
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: