什么是折返时间?

常震常震最佳答案最佳答案

在单片机或者嵌入式这种有限资源的情况下,如何最大效率地利用现有的资源和开发板,是经常需要思考的问题。 举个例子,假设我们要实现一个功能,功能本身比较简单,那么根据复杂度我们大概需要7个时钟周期来执行这个函数(当然实际会比这要稍稍复杂一点);现在我们不想花费太多的时间和资源,想使用更少的代码和资源来完成这一功能,有没有办法呢?答案肯定是有的,那就是将这个函数的代码写在一起,或者部分代码写在一起,然后循环执行,这样其实就节省了资源和时间。

这里就引出了“代码优化”这一话题,而所谓的“折返时间”也就是指代码重复运行的时间片段,以最小的时间成本和资源代价完成最大的工作量,就是我们所说的代码优化的目的之一。 为了描述的方便一些,我们来假设一个简单的例子,假设有A、B两个函数,他们分别都需要5个时钟周期来进行计算,现在我们将这两个函数写在一起,形成一个C函数,如果循环执行C函数,那么理论上比单独执行A、B两次各减掉2个时钟周期,也就是说只要30个时钟周期就可以完成原来40个时钟周期的操作。

当然实际上会更加复杂一些,因为存在输入参数等的传递和函数内部的其他操作,但是这些原理是一样的。通过这种代码的优化,我们可以用更少的资源和更短的时间完成更大的工作量,从系统的角度来讲这就是最高效的。

我来回答
请发表正能量的言论,文明评论!