在MASM中区分x64和x86模式

我有asm文件,可以使用masm(ml.exe或ml64.exe)为x64和x86组装. masm中是否有一些预定义的宏来检测该文件是否正在为x64进行组装?现在我手动定义_WIN64,然后测试它,但必须有一个更好的方法来检查它. 最佳答案 您可以尝试测试是否定义了RAX,如同类似问题的答案之一所示:
Detecting architecture at compile time from MASM/MASM64

我使用这个技巧来创建一个变量,它将阻止我的x64 asm代码在x32版本中组装

IFDEF RAX
    END_IF_NOT_X64 equ <>
ELSE
    END_IF_NOT_X64 equ end  ; kill stop the assembler if we're not compiling for x64
ENDIF

END_IF_NOT_X64

; x64 code...
点赞