1.循环的判断语句约占用了执行时间的17%。
2.编译器会对程序进行一定程度的优化,如:
(1) a += b1; a += b2; …… a += bn;
编译器会合并为
a += n*b;
(2) a = 3; a = 3;……a = 3;
编译器会去除无作用的单一重复语句。
3.常量赋值、运算比变量快。
4.不存在依赖关系的语句,CPU可并行处理,如:
依赖关系:a += b; c += a;
无依赖关系:a += b; c += b;
Tips: 尽量避免等待前一操作的执行结果。
在统计数值时,避免单个变量进行统计,应分成若干个变量进行统计后合并。
5.运算对象的变量越多,处理时间反而越短,因为CPU可以并行处理,当变量个数与CPU运算器个数相同时最快。
6.乘法运算时间是加法的3倍:0.9 : 0.3(纳秒),除法运算最慢:7.3纳秒。
7.无符号除法运算(unsigned)比带符号的要快得多。
8.if...else... 条件成立比不成立的执行时间短。
9.32位环境下函数调用:无参数比有参数快10%;64位环境由于有较多寄存器,时间差别不大。
时间: 2024-10-10 02:12:34