使用Visual Studio 2019--调试汇编代码

声明:本文使用32位masm,代码与16位,64位不同

---------------------------------------------------------------------------------------------------------------------------

遇到问题:

1、LINK 1104:

在网上找了很久,并没有解决问题。

解决方法:

点击visual studio编译后的错误提示:LINK 1104,查看官方文档

其中一条原因:路径过长!(= =,没错,就是这个)

我遇到的情况是:在路径下创建项目,第一个编写的文件正常运行,修改文件名或创建新文件后编译报错:LINK 1104

我的路径是:D:\project\Git\Assembly\Assembly Language For x86 Processors\chapter1

修改路径:D:\project\Git\

没有问题!

---------------------------------------------------------------------------------------------------------------------------------

1、官方下载安装器,安装社区版

2、选择:使用C++的桌面开发(或者选择:使用C++的游戏开发)

选择安装位置,共需要8G左右,占用我C盘2.多G(我的强迫症在吼)

3、克隆或签出代码

登录

and then,如果没有远程库需要先创建一个,不创建也没关系

3、安装扩展

再顺便安装个汇编的代码高亮

4、创建第一个汇编项目:AddTwo.asm(这不是我想要的Helloworld!)

OK,上图

双击或者点击“下一步”

关键来了———生成自定义:

钩选masm(.targets,.props)

来创建.asm文件,或者右键“源文件”--“添加”--“新建项”

画重点:不要用“Add New File”扩展

用插件快速创建的文件报错:

then,回到正道:(为什么不用:ctrl+shift+A创建)

Irvine 大佬的代码(学汇编可以看Assembly Language for x86 Processors的中文看版:《汇编语言 基于x86处理器》):

; AddTwo.asm - adds two 32-bit integers.
; Chapter 3 example

.386
.model flat,stdcall
.stack 4096
ExitProcess proto,dwExitCode:dword

.code
main proc
    mov    eax,5
    add    eax,6                

    invoke ExitProcess,0
main endp
end main

OK!ctrl+F5,运行,走你!

nice!

F5调试:

先打个断点

来深入了解寄存器吧!

如果没有寄存器窗口

开启汇编二进制之旅!

wait! 还有一个 列表文件

没有.lst后缀的列表文件

配置:

1、右键项目,属性

2、配置

3、重新运行(如果出现LNK 1104的错误,并且确定路径没问题,可以多尝试几次重新创建项目)

查看项目目录下:

有了!它可以帮助更好的理解汇编代码。

原文地址:https://www.cnblogs.com/slothrbk/p/11706132.html

时间: 2024-10-20 00:28:59

使用Visual Studio 2019--调试汇编代码的相关文章

windows下用visual studio code 调试go代码

http://www.golangtc.com/download下载安装包或压缩包 配置环境变量 配置GOROOT: 配置PATH:在PATH最后添加 配置GOPATH:GOPATH的作用请自行百度,具体目录可以自行定义 需要的扩展插件 代码自动完成(使用gocode) 快速提示信息(使用godef) 跳转到定义(使用godef) 搜索参考引用(使用go-find-references) 文件大纲(使用go-outline) 重命名(使用gorename) 保存构建(使用go build和go

我的全栈之路-C语言基础之Visual Studio 2019使用技巧

我的全栈之路-C语言基础之Visual Studio 2019使用技巧 我的全栈之路 5.1 Visual Studio 2019调试程序 在后期编写程序时,经验不足的开发人员通常会遇到两种错误:编译错误和运行时错误,编译错误通常是编写的程序不满足编译器的语法规范,而运行时错误则是程序运行时发生的错误,想要排查程序运行时的错误,就需要使用IDE提供的调试功能. 在源文件debug.c中定义一个返回两个整数相乘的方法mul,然后在main函数中定义两个变量,并调用两个整数相乘的方法,输出计算结果

在Visual Studio 中调试 Javascript

在上一篇文章中,我们介绍了如何在IE中调试Javascript代码,这一篇内容主要介绍在Visual Studio中调试Javascript. Javascript的调试分为主动调试和被动调试,主动调试指的是开发人员在代码中启动调试,并添加断点来监视代码的执行,而被动调试指的是在代码中出现错误以后,浏览器自动的进入调试状态,开发人员可以进行代码的调试工作. IE 浏览器默认没有开启被动调试,需要我们开启被动调试的功能,在Internet 选项中: 取消这两项的勾选,这样就可以在代码出现错误的时候

Visual Studio 2019 UTF-8编码调试显示中文

本地版本 Microsoft Visual Studio Community 2019 [1]Visual Studio 2019 UTF-8编码调试显示中文 (1)设置string默认编码为utf-8,只需要在头文件中加入以下代码: #pragma execution_character_set("utf-8") // 默认使用UTF-8 (2)修改stl.natvis文件(大约753~756行) 文件位置:建议使用everything直接搜索文件名 参考本地位置:E:\Progra

Visual Studio高级调试技巧

1. 设置软件断点,运行到目标位置启动调试器 方法①:使用汇编指令(注:x64 c++不支持汇编) _asm int 3 方法②:编译器提供的方法 __debugbreak(); 方法③:使用windows API DebugBreak(); WerFault.exe进程(Windows Error Reporting)弹出ConsoleTest.exe已停止工作: 要想出现“调试程序”选项,需要将Windows Error Reporting注册表信息设置成如下图所示(注:特别是红框的内容)

Visual Studio 2019 使用 Live Share

一.前言 Visual Studio 2019 在今天发布(北京时间)了,这次带来了一个比较有趣的 Live Share 功能,使用它可以进行更好的协作开发.主要功能: 更多资料可看官方介绍: Visual Studio 实时共享 什么是Visual Studio Live Share? 二.Visual Studio Code 注意事项 Live Share 可以在 Visual Studio 2019 和 Visual Studio Code 上使用. 在 Visual Studio Cod

Visual Studio 2019 正式发布

原文链接: https://www.oschina.net/news/105629/vs2019-general-availability 如约而至,微软已于今天推出 Visual Studio 2019 正式版,一同发布的还有 Visual Studio 2019 for Mac. Visual Studio 2019 下载地址:https://visualstudio.microsoft.com/downloads/Visual Studio 2019 for Mac 下载地址:https:

【译】Visual Studio 2019 中 WPF & UWP 的 XAML 开发工具新特性

原文 | Dmitry 翻译 | 郑子铭 自Visual Studio 2019推出以来,我们为使用WPF或UWP桌面应用程序的XAML开发人员发布了许多新功能.在本周的 Visual Studio 2019 版本 16.4 和 16.5 Preview 1中,我们希望借此机会回顾一下全年的新变化.如果您错过了我们以前的版本,或者只是没有机会赶上,那么此博客文章将是您可以看到我们在整个2019年所做的每项重大改进的地方. XAML实时调试工具: XAML C# Edit & Continue 现

【广州.NET社区推荐】【译】Visual Studio 2019 中 WPF & UWP 的 XAML 开发工具新特性

原文 | Dmitry 翻译 | 郑子铭 自Visual Studio 2019推出以来,我们为使用WPF或UWP桌面应用程序的XAML开发人员发布了许多新功能.在本周的 Visual Studio 2019 版本 16.4 和 16.5 Preview 1中,我们希望借此机会回顾一下全年的新变化.如果您错过了我们以前的版本,或者只是没有机会赶上,那么此博客文章将是您可以看到我们在整个2019年所做的每项重大改进的地方. XAML实时调试工具: XAML C# Edit & Continue 现