VS-写汇编

3 篇文章 0 订阅

一. 新建项目

  • 直接创建空项目在这里插入图片描述

  • 右击项目菜单添加依赖项
    在这里插入图片描述

  • 在弹出的窗口勾选masm在这里插入图片描述

  • 再次右击项目菜单添加新文件,选择添加cpp文件,然后修改文件后缀名为.asm,完成后点确定。在这里插入图片描述

  • 再次右击项目菜单,确认使用的是 Microsoft Macro Assembler在这里插入图片描述在这里插入图片描述

  • 安装汇编高亮插件,搜索 AsmDude,下载不成功请修改DNS为8:8:8:8
    在这里插入图片描述

  • 复制代码,测试项目是否新建成功。
    在这里插入图片描述

.686 ;指令集
.MODEL flat, c ;保护模式,链接c

includelib ucrt.lib ;c函数库
includelib legacy_stdio_definitions.lib

printf  PROTO  arg:PTR byte, printlist:vararg ;函数原型

.stack  10h ;堆栈段

.data   ;数据段
format byte "%s",0Ah,0 ;格式符
text  byte "HelloWorld!", 0	;声明变量

.code   ;代码段
main   proc 
       invoke printf,ADDR format,ADDR text ;调用printf函数
       ret				;return 0
main   endp  
end    main

二. 熟悉语法

  1. hello程序语法汇总 (一些伪指令以"."+"指令名"的形式给出)
  • .686 指定程序使用的指令集
  • .MODEL(大写) flat 使用保护模式
  • .MODEL(大写) c 链接c/c++
  • includelib 链接lib
  • proto 函数原型
  • invoke 调用函数
  • addr 赋值
  • .stack .data .code 堆栈段,数据段,代码段
  • proc(Procedure) 程序块开始
  • endp(EndProcedure) 程序块结束
  • end 整个程序的结束
  • ret return 0
  • 0Ah \n
  • 0 字符串结束
  • 变量名不区分大小写
  • ;注释符

三. Debug

  • 单击灰色条可以创建断点,或者右键创建断点
    在这里插入图片描述

  • 点击运行,打开debug/windows/registers即可查看寄存器的值在这里插入图片描述

  • 右键寄存器菜单,可以选择显示更多的寄存器类型。在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值