#pragma LOOP_UNROLL(对应的另一条指令是N0_LOOP_UNROLL)该指令对紧随其后的函数中的循环程序进行优化,从字面解释就是将循环打开、打散,该指令与编译器选项设置.Cu功能一样,设置方法为Compiler for HC08→Options→Optimiza-dons→Loop Unrolling),循环优化设置程序范例如下。
#pragma LOOP_UNROLL
void f(void){
for(i=0;i
{//循环体程序;}
}
在循环次数LpCounter已知的情况下,比如1000次,如果适当修改循环体程序,使得循环体程序更长一些,比如将循环l0次的功能写入循环体程序,则可以减少循环次数到IOC次。而众所周知,循环是系统资源的最大杀手,循环次数的减少具有很实际的意义。实际应用中,每次循环的运算次数也不一定是越多越好,循环次数对每一个应用有一个最佳的设置。手动优化需要根据具体情况反复试验,因此可以设置LOOP—UNROLL选项,将这个工作交给编译器去做。
阅读更多请您关注: