1、生成汇编
1.1、建立工程
建立最简单的控制台程序
1.2、设置生成汇编参数
Project -> Settings -> C/C++ -> Project Options中增加/FAs
1.3、执行编译
在debug目录下生成汇编文件
TITLE D:\AsmDem\AsmDem.cpp
.386P
include listing.inc
if @Version gt 510
.model FLAT
else
_TEXT SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT ENDS
_DATA SEGMENT DWORD USE32 PUBLIC 'DATA'
_DATA ENDS
CONST SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST ENDS
_BSS SEGMENT DWORD USE32 PUBLIC 'BSS'
_BSS ENDS
$$SYMBOLS SEGMENT BYTE USE32 'DEBSYM'
$$SYMBOLS ENDS
$$TYPES SEGMENT BYTE USE32 'DEBTYP'
$$TYPES ENDS
_TLS SEGMENT DWORD USE32 PUBLIC 'TLS'
_TLS ENDS
; COMDAT _main
_TEXT SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT ENDS
FLAT GROUP _DATA, CONST, _BSS
ASSUME CS: FLAT, DS: FLAT, SS: FLAT
endif
PUBLIC _main
; COMDAT _main
_TEXT SEGMENT
_main PROC NEAR ; COMDAT
; 8 : {
push ebp
mov ebp, esp
sub esp, 64 ; 00000040H
push ebx
push esi
push edi
lea edi, DWORD PTR [ebp-64]
mov ecx, 16 ; 00000010H
mov eax, -858993460 ; ccccccccH
rep stosd
; 9 : return 0;
xor eax, eax
; 10 : }
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0
_main ENDP
_TEXT ENDS
END
2、编译汇编文件
2.1、新建空的win32工程
2.2、将1.3生成的汇编文件加入工程
2.3、配置编译参数
将如我们要编译hello.asm文件,则将hello.asm文件增加到工程中,然后依次进入Project--->Setting---》Custom Build
点击左边的工程目录树,找到我们要编译的文件hello.asm并单击。然后再右边的Commands:中输入ml/c/coff hello.asm
Outputs:中输入hello.obj。按确认退出即可。
2.4、汇编工具配置
将masm32\bin中的ML.EXE,ML.ERR文件拷贝到VC98\bin文件夹中。