【asm基础】vs下的反汇编
反汇编
对于下面的代码:
为了反汇编,首先需要将代码进行调试运行,这时需要先打点:
之后启动调试:
调试过程中,可以选择调试->窗口->反汇编,进行代码的反汇编:
反汇编的结果如下:
上述反汇编代码是在Debug版本下得到的,即:
其中001313BE(16进制,没有加符号说明)是存放代码的地址,而138154h(16进制,有加符号h说明)是全局变量gi的地址。为了确定这一点,可以通过监视窗口查看:
具体窗口中输入输入名称&gi,可以观察到:
这是变量的值,至于代码存放的位置,通过直接查看1313BE这个内存地址来查看:
在内存监视窗口中查看到的值如下:
由于存放在内存中的是机器码,没法直接看出来mov指令是否在1313BE这个问题,所以先要把mov指令翻译成对应的机器码。具体做法是在代码窗体中右键,并选择“显示代码字节”:
之后得到mov对应的机器码如下:
刚好与内存中的数据一致!
还没有评论,来说两句吧...