CPU里面有许多方法用来使程序运行的速度更快,比如指令流水线、多线程、超标量、分级缓存等,编译器也会对一个程序进行优化,使其运行更加快速,但是除此之外我们还要学习如何写一个高效的程序。通过实验可以看出,寄存器间的加减法运算和赋值运算速度非常快,内存上的数据操作比寄存器的操作费时,乘法和除法运算非常耗时,常量的除法运算比一般运算快,2的乘方的乘法除法运算速度快,其+-1和倍数的运算也较快,忽略数组长度的操作很费时,条件判断语句如果不能正确预测也很费时。并且找出一个程序里面最费时的地方很重要,可以知道优化的重点在哪里,通过各种方法降低此部分的耗时对于加快程序的运行至关重要。此外还有许多细节可以掌握,比如数组或者矩阵的拆分、循环的展开、公共的不变量或者可以预先执行的命令放到循环外面、减少条件判断语句、充分利用位运算、利用制表法等方法来进一步加快程序的运行。