搭建windows下汇编学习环境

一笑奈何 提交于 2019-12-02 22:39:53

MASM32是一个不错的汇编IDE,但是里面的ml.exe和link.exe太老了。于是我直接用了visual studio 2019里面带的ml.exe和link.exe。

 

首先安装MASM32和visual studio 2019,然后在计算机环境变量里面,添加环境变量,

include变量是masm32文件夹里面include头文件的位置,lib变量是变量是masm32文件夹里面lib文件的位置,编译和链接的时候,ml.exe和link.exe需要找到这些文件的位置。

Path里面添加visual studio 2019里面,x86文件夹里面ml.exe和link.exe文件的位置。

环境变量设置完成后,就可以在CMD窗口里面使用ml命令编译汇编文件,使用link来链接文件。

不知道为什么lib变量设置后没有生效,在link的时候仍然需要手动指定lib文件的位置。

    .386
    .model flat, stdcall
    option casemap:none
     
    include windows.inc
    include user32.inc
    include kernel32.inc
    includelib user32.lib
    includelib kernel32.lib
     
    .data
    szCaption   db 'Duke56',0
    szText      db 'Hello World!',0
     
    .code
    start:
        invoke MessageBox,\    ; 调用函数名
        NULL,\            ; 父窗口句柄
        offset szText,\        ; 文字
        offset szCaption,\    ; 标题
        MB_OK            ; 按钮类型
     
        invoke ExitProcess, NULL
    end start

以上代码使用记事本等保存为test.asm文件。然后在CMD窗口中,进入test.asm文件的目录,使用ml /c /coff test.asm编译test.asm成test.obj文件,再使用link /subsystem:windows /libpath:e:\masm32\lib test.obj,链接后成为test.exe文件。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!