为什么某些8051程序以代码" LOOP:SJMP LOOP"结束?

时间:2017-04-17 20:57:57

标签: assembly 8051

到目前为止,我见过的几乎所有简单的8051程序都以代码结束 LOOP: SJMP LOOP

根据我的理解,我认为上面的指令通过一次又一次地调用相同的指令来创建无限循环。但是在程序结束时有无限循环的目的是什么,如果它一次又一次地运行,那么程序何时终止。

1 个答案:

答案 0 :(得分:5)

你如何"终止"或结束裸机程序?通常没有停止或其他命令,处理器不会停止。最安全/最干净的是让它无限循环(而不是只是在内存中试图执行它所发现的内容)。

因此,对于简单的教育处理器/微控制器程序,以及#34;结束"的程序,如果处理器没有停止,你会希望以无限循环结束它们。大多数mcus永远不会停止他们永远运行(他们可能会在低功率状态下进入睡眠状态,但是当您按下遥控器上的按钮或其他任何东西时醒来。)