2013-03-12 175 views
1

在MASM中,是否可以將宏指令轉換爲相應的彙編語言指令?我想將MASM的宏指令轉換爲純彙編語言指令,以便我可以看到宏如何實際工作。將彙編語言宏轉換爲純彙編語言

例如,我想這些宏指令轉換爲對應的彙編語言指令(不含宏):

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

當然,最簡單的方法是實際上讓MASM組裝文件並讓它生成一個輸出列表。我忘記了如何做到這一點 - 我多年以來沒有使用過MASM--但我知道那裏曾經有一個命令行開關來生成輸出列表。 – 2013-03-12 18:46:56

回答

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