1

在 MASM 中,是否可以将宏指令转换为相应的汇编语言指令?我想将 MASM 的宏指令转换为普通的汇编语言指令,这样我就可以看到宏实际上是如何工作的。

例如,我想将这些宏指令转换为相应的汇编语言指令(不带宏):

.if(x > 5)
    mov eax, x
.else
    mov ebx, x
.endif
4

1 回答 1

2

我打算建议像500-InternalServerError提议的那样“生成列表”,但在验证之后,这将不起作用 - 该列表仅包含您的说明,而不包含 MASM 生成的说明。起作用的是以下内容:

1)用调试信息组装:

ml /c /Zi file.asm

2)用dumpbin(或其他反汇编程序)反汇编:

dumpbin /disasm file.obj

对于上面的示例,它产生:

$$000000:
  00000000: 83 3D 00 00 00 00  cmp         dword ptr [x],5
            05
  00000007: 76 04              jbe         @C0001
  00000009: 8B C2              mov         eax,edx
  0000000B: EB 02              jmp         @C0003
@C0001:
  0000000D: 8B DA              mov         ebx,edx
于 2013-03-12T19:04:54.187 回答