【问题标题】:Using %ifmacro with NASM assembler将 %ifmacro 与 NASM 汇编器一起使用
【发布时间】:2017-02-20 17:32:16
【问题描述】:

假设我有这个宏:

%macro MYMACRO 2-*
    ;some code here
%endmacro

这些测试通过:

%ifmacro MYMACRO
%ifmacro MYMACRO 2
%ifmacro MYMACRO 1-*
%ifmacro MYMACRO 2-*
%ifmacro MYMACRO 3-*

而且这个测试没有通过:

%ifmacro MYMACRO 1

我的问题是:11-* 那么为什么 %ifmacro MYMACRO 1-* 通过并且 %ifmacro MYMACRO 1 没有?

【问题讨论】:

    标签: assembly x86 nasm


    【解决方案1】:

    根据nasm manual

    如果使用给定的定义宏,则 %ifmacro 被认为是真的 参数的名称和数量会导致定义冲突。

    显然12-* 不冲突,但1-* 会。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-11
      • 1970-01-01
      • 1970-01-01
      • 2012-03-20
      • 1970-01-01
      • 2016-08-02
      相关资源
      最近更新 更多