最好安装汇编语法高亮插件:asmhighlighter
32位程序
方法一:
在vs中新建32位程序,添加一个.asm文件
右击该文件,点击属性
从生成中排序 选择 否
项类型选择 自定义生成工具
如果左边没有出现自定义生成工具则先保存,然后再次打开该文件的属性
命令行输入:
ml /c /coff %(fileName).asm
输出输入:
%(fileName).obj
%(Outputs)
demo代码
test.asm
;测试函数 三个数相加
;.386
.model flat, c
;public testAdd
.code
testAdd proc
xor eax, eax
mov eax, [esp + 4]
add eax, [esp + 8]
ret
testAdd endp
end
main.cpp
#include "pch.h"
#include <iostream>
extern "C" int testAdd(int a, int b);
int main()
{
int a = 0;
int b = 0;
std::cin >> a >> b;
int c = testAdd(a, b);
std::cout << c << std::endl;
system("pause");
}
方法二
项目属性 生成自定义
勾选
.asm属性
64位程序
和x32一样
方法一的命令有点区别
ml64 /c /coff %(fileName).asm
如果是纯汇编程序
需要指定程序入口点
新建空项目
选择 masm 依赖项并生成
如果先勾这个然后创建.asm文件,属性中自动会编译的
项目属性中入口点填main
main.asm
;代码段
.code
main proc
mov rax, 1
mov rbx, 2
add rax, rbx
ret
main endp
end