底层优化(一) sum += fuc(x)

代码段1:

if(Is_prime(i))
{
  sum++;
}

代码段2:

sum += Is_prime(i);

解释:今天看到这段代码真的惊艳阿,代码2要比代码1运行时间快的,内部原因是:系统结构中,计算机为了加快运算速度,执行该条指令时,同时会取下一条指令。回到代码段1,执行到if语句是,系统不知道if判断的结果,就会预判结果,如果预判错了,那么取的指令的所耗费的时间就是无用功,而代码段2就不会出现这种浪费,代码段2的方式显然更适合计算机内部结构,速度更快。终于感觉到懂计算机基础是多么重要的事情。

原文地址:https://www.cnblogs.com/sxy-798013203/p/7789983.html