如何将NASM应用程序分解为模块/包并包含它们?

时间:2017-01-05 11:28:28

标签: assembly nasm

我开始学习汇编语言。我在基础水平上熟悉它。我想知道,大会中的应用程序有多大,也就是说,我如何将它们分成模块/包并将它们包含在其他模块中?我特别在谈论NASM。

1 个答案:

答案 0 :(得分:3)

你可以:

  • 使用%include
    将外部文件包含在当前文件中 这可以通过-i命令行开关进一步控制。

    您还可以强制NASM使用-p开关预先包含文件。

  • 汇总多个文件
    由于NASM不是链接器,您可以利用链接器的能力......好吧,将文件链接在一起。

    使用GLOBAL指令使一组符号对其他模块可见 使用EXTERN指令从其他模块导入一组符号。

    您可以将所有目标文件传递给链接器 NASM(如今)只能一次汇编一个文件,因此需要构建脚本。

上述两者并不相互排斥,但您必须基本了解NASM output file formats以了解后者何时适用。