[笔记]vs2015 编写汇编masm32之使用MASM32库

简介: vs2015 编写汇编masm32之使用MASM32库

文章目录



   前言

   环境搭建

       MASM32

           安装过程

   运行代码

       vs2015 创建空项目

       配置include

       配置lib

       运行代码

       报错 A2026 constant expected winextra.inc

       运行结果


前言



环境搭建



MASM32


下载地址:http://www.movsd.com/masm32/masm32v11r.zip


MASM32是一个免费的软件包,该软件包中包含了汇编编译器ml.exe、资源编译器rc.exe、32位的链接器link.exe和一个简单的集成开发环境(Intergrated Development Environment,。IDE)QEditor.exe。


为什么说MASM32是从其他产品集成出来的呢?

这是因为软件包中的ml.exe来自Microsoft的MASM软件包,rc.exe和link.exe则来自Microsoft的Visual Studio.MASM32软件包还包括了详尽的头文件、导入库文件、例子文件、帮助文档和一些工具程序,如lib.exe和dumpbin.exe等,后者被大家公认为最好的显示PE文件结构的工具。


大家可以从网站htp:/www.masm32.com/上获得MASM32SDK的最新版本,并可以在论坛里与来自世界各地的汇编爱好者交流技术和思想。


安装过程


https://www.jianshu.com/p/e082912ef8ef

双击install.exe 选择D盘 便会安装到D:\masm32

图片.png


运行代码



我们这里选用vs开发,只需要添加依赖库即可


vs2015 创建空项目


参考:https://blog.csdn.net/qq1113673178/article/details/122555320


配置include


图片.png

配置lib


图片.png


运行代码

;------------------------
; 我的第一个基于WIN32的汇编程序
; 戚利
; 2006.2.28
;------------------------
    .386
    .model flat,stdcall
    option casemap:none
include    windows.inc
include    user32.inc
include    kernel32.inc
includelib user32.lib
includelib kernel32.lib
;数据段
    .data
szText     db  'HelloWorld',0
;代码段
    .code
start:
    invoke MessageBox,NULL,offset szText,NULL,MB_OK
    invoke ExitProcess,NULL
    end start


报错 A2026 constant expected winextra.inc


https://blog.csdn.net/DongMaoup/article/details/120471110

改默认工具

图片.png


运行结果


图片.png


相关文章
|
4月前
|
存储 安全 数据安全/隐私保护
Windows 32 汇编笔记(一):基础知识
Windows 32 汇编笔记(一):基础知识
|
3月前
|
存储 编译器 Linux
Windows 32 汇编笔记(二):使用 MASM
Windows 32 汇编笔记(二):使用 MASM
|
4月前
|
存储 机器学习/深度学习 芯片
8086 汇编笔记(十二):int 指令 & 端口 & 直接定址表
8086 汇编笔记(十二):int 指令 & 端口 & 直接定址表
|
4月前
|
存储 索引
8086 汇编笔记(十一):内中断
8086 汇编笔记(十一):内中断
8086 汇编笔记(十):标志寄存器
8086 汇编笔记(十):标志寄存器
8086 汇编笔记(九):call 指令 和 ret 指令
8086 汇编笔记(九):call 指令 和 ret 指令
|
4月前
|
编译器
8086 汇编笔记(八):转移指令的原理
8086 汇编笔记(八):转移指令的原理
|
4月前
|
存储 数据处理
8086 汇编笔记(七):数据处理的两个基本问题
8086 汇编笔记(七):数据处理的两个基本问题
|
4月前
|
编译器
8086 汇编笔记(六):更灵活的定位内存地址的方法
8086 汇编笔记(六):更灵活的定位内存地址的方法
8086 汇编笔记(五):包含多个段的程序
8086 汇编笔记(五):包含多个段的程序