`%ifdef`和`%defstr`在汇编中做什么(在外行人的条款中)?

时间:2018-01-05 18:48:45

标签: assembly x86 nasm ifdefine

我只是为了学习目的而阅读some assembly source code(我喜欢通过搞清楚代码来学习)。

我遇到了以下几行:

%ifdef KERNEL
    kernel_file:
      %defstr KERNEL_STR %[KERNEL]
      incbin KERNEL_STR
    .end:
    align 512, db 0
%else
    align BLOCK_SIZE, db 0
    %ifdef FILESYSTEM
        filesystem:
            %defstr FILESYSTEM_STR %[FILESYSTEM]
            incbin FILESYSTEM_STR
        .end:
        align BLOCK_SIZE, db 0
    %else
        filesystem:
    %endif
%endif

我知道%include做了什么,我可以说%ifdef if语句

我完全迷失了%defstr。我只在this网站上找到了解释并且更加困惑。

有人可以给我一个非常基本的解释吗?

0 个答案:

没有答案