汇编for嵌套,跟 C++for嵌套实现速度 快近 8倍

以下是C#版测试

以下是 C++ debug版测试

以下是 release版测试

我认为 纯寄存器 实现 for循环还是很重要的。

事实上可以加速2个for嵌套, 3个应该x64位应该可以。主要是寄存器不足。频繁写入内存堆栈。。

寄存器越多, for循环嵌套效率越高。但超过3层for 没啥处理器 有那么多寄存器。。

总之一个方法里,需要运算的局部变量太多,就需要频繁压栈 写入内存。

局部变量用来频繁运算的。占用寄存器比较好。

只写入1~2次的,可直接写入内存。但有时候全局计数器,还是频繁写入的。计数器之类必须占用寄存。

因此计数器不能太多。。10多20个计数器。那CPU运算效率是很低的。。主要是寄存器不足。

不过可以写入 ax  16位。计数足够了。 

发布了53 篇原创文章 · 获赞 12 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/q158805972/article/details/100149708