c - 哪种是编写循环的最佳方式?

标签 c loops embedded

我想知道编写循环的最佳方式是什么?

Count Down_to_Zero Loop 是否比 Count_Up_Loops 更好?特别是在嵌入式系统环境中,哪一个是更好的选择???

最佳答案

在嵌入式世界中,根据您使用的处理器,优先使用一种方案可能比另一种方案更好。例如,PIC 处理器有一条指令“如果不为零则递减和跳转”。这对于在单个指令中执行倒计时“for”循环非常有用。

其他处理器有不同的指令集,因此适用不同的规则。

您可能还必须考虑编译器优化的影响,编译器优化可能会将向上计数转换为可能更高效的向下计数版本。

一如既往,如果您不得不担心这些事情,那么您就使用了错误的处理器和工具。用比汇编程序更高级的语言编写的想法是向维护工程师解释软件是如何工作的。如果使用倒计时循环是违反直觉的,那么不要考虑处理器效率的(轻微)损失。

关于c - 哪种是编写循环的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5510281/

相关文章:

c++ - #define 参数之间的空格

c - 使用 Valgrind 检查后如何查找和删除我的 C 程序中的内存泄漏和错误

c - C中数组的初始化

python - Python 的性能是否物有所值?

c - 从 4 个 uint8_t 值构建 int32_t

c - C 中的二维 Char 数组意外输出

python - 多线程 python 应用程序在运行其线程时挂起

c++ - 在循环中为 C++ 创建对象

matlab - 使用在每次迭代中递增的变量向量化 for 循环

embedded - glibc 可以在裸机或 RTOS 平台上运行吗?