0

汇编程序中应该出现多少个 HALT 和 .END?(假设我们的程序不应该永远执行)

是否至少有一个 HALT 和一个 .END?

4

2 回答 2

0

从技术上讲,这是正确的,但.END标志着源文件的结束。它严格来说是一个编译时构造,对你的代码是否永远运行没有影响。您需要确保程序流最终到达一条HALT指令,显然您至少需要其中一条指令。但是,这本身并不能保证所有执行路径都真正结束,因此它不是充分条件。

于 2014-11-25T12:52:06.477 回答
0

你应该有一个 .END 让汇编器知道源文件是完整的,不管它是否应该永远运行。

您可能有尽可能多的 HALT(包括零,在“永远运行”的情况下),但是同样的警告适用于高级语言中的多个 return 语句:多个退出点可能会混淆代码流。为了可读性,我建议尽可能少的 HALT 语句。

于 2014-12-11T04:00:51.227 回答