我是汇编语言的新手,这个问题出现在我的脑海中:哪个是构建我的代码,宏或程序的更好的解决方案? 虽然宏中包含的代码只是复制到所需的部分,并且允许执行代码而不需要昂贵的跳转,但它确实添加了在程序执行时必须加载的额外指令。 此外,在程序中,虽然它减少了需要在内存中加载的代码,但它也增加了昂贵的跳转,从一段鳕鱼到另一段。 哪一个更好?宏或程序?
答案 0 :(得分:2)
一般情况下,您应该使用程序。过程有助于组织代码,可以使调试更容易,并避免重复相同的代码。在为较小的任务创建通用语法时,可以使用宏,使代码更易于阅读。
当然,如果您真的关心性能并且根本不关心代码的大小,那么您可以扩展这种通用方法以支持更多的宏使用。
最后,您必须查看每个具体案例。但是我可以告诉你,在过度使用宏之前我已经继承了代码。它不仅复制了更多的代码,而且花了很长时间才弄清楚源代码,因为我必须追踪所有这些宏定义并弄清楚它们实际上在做什么。
答案 1 :(得分:0)
通常,程序使您的代码比宏更易于阅读,但请记住有跳转成本。最重要的提示就是这个;如果它是一小块代码(即你只想在代码体内做一两件事),使用一个宏,因为你对代码所做的事情不值得跳转/过程调用的代价。但是,如果你正在编写一大块代码(即你在代码体内做了很多事情),那么在这种情况下你会更好地使用这个程序,因为在这种情况下跳转的成本会非常小。