【VS 2017 & C语言 & 汇编语言】如何使用VS 2017,通过反汇编查看C语言代码对应的32位x86汇编语言 & VS 2017单步调试的使用

0 前言

本文适用于VS的大多数版本,本文以VS 2017为例进行讲解。

1 编辑C语言代码

首先,在VS编译器中,创建项目,敲一段C语言代码,这个过程不解释了,如果不会请百度。

#include 
#include 


int main() {
	short a = 32;
	int i = 19;
	int *p = &i;
	
	system("pause");
	return 0;
}

2 查看汇编语言及寄存器和内存

2.1 设置断点

在程序结束前,设置断点(按F9
【VS 2017 & C语言 & 汇编语言】如何使用VS 2017,通过反汇编查看C语言代码对应的32位x86汇编语言 & VS 2017单步调试的使用_第1张图片

2.2 进入调试模式

按F5进入程序调试模式

2.3 查看汇编指令

VS编译器默认是编译环境,是使用32位x86指令集,目前比较常用,默认设置无需修改。

点击【调试】–>【窗口】–>【反汇编】
【VS 2017 & C语言 & 汇编语言】如何使用VS 2017,通过反汇编查看C语言代码对应的32位x86汇编语言 & VS 2017单步调试的使用_第2张图片
这样就可以打开反汇编窗口,查看汇编指令。

2.4 查看寄存器

同样的,在【反汇编】下面,点开【寄存器】
【VS 2017 & C语言 & 汇编语言】如何使用VS 2017,通过反汇编查看C语言代码对应的32位x86汇编语言 & VS 2017单步调试的使用_第3张图片
【VS 2017 & C语言 & 汇编语言】如何使用VS 2017,通过反汇编查看C语言代码对应的32位x86汇编语言 & VS 2017单步调试的使用_第4张图片
打开寄存器后,在该窗口【右键】,可以设置显示情况。
【VS 2017 & C语言 & 汇编语言】如何使用VS 2017,通过反汇编查看C语言代码对应的32位x86汇编语言 & VS 2017单步调试的使用_第5张图片
我这里勾选了比较常用的。

2.5 内存

步骤不再多说
【VS 2017 & C语言 & 汇编语言】如何使用VS 2017,通过反汇编查看C语言代码对应的32位x86汇编语言 & VS 2017单步调试的使用_第6张图片
这里的内存1,2,3,4,他们的地址范围不一样,例如:

  • 内存1对应地址:0~10、
  • 内存2对应地址:11~20
  • 内存3:21~30

所以你就明白,根据地址情况,使用不同的内存即可,只是方便你查看,分开了一下,没别的含义。

2.6 推荐设置

这些是汇编语言常用的操作,当然,还建议打开【局部变量】,以下是我的窗口设置
【VS 2017 & C语言 & 汇编语言】如何使用VS 2017,通过反汇编查看C语言代码对应的32位x86汇编语言 & VS 2017单步调试的使用_第7张图片

3 使用单步调试

在编辑完代码后,按【F11】即可进行单步调试,进入调试之后,如果想执行下一步命令,就再按F11.

需要注意的是窗口的选择

  • 如果单步执行源代码的下一步,就选中【源程序】窗口
  • 如果单步执行汇编代码,就选中【反汇编】窗口

你可能感兴趣的:(VS,C++,软件,汇编语言)