在调试期间,如果想要显示数组内容,步骤如下:
选择Debug(调试)菜单 → 选择Windows (窗口)→ 选择Memory(内存) → 选择Memory 1(内存 1),然后就可以拖动内存窗口到Visual Studio工作区的任何地方。
然后可以拖动内存窗口到工作区,我拖到了左下角。
在内存窗口中查找定义的数组:
;32位汇编程序模板 (Template)
.386
.model flat,stdcall
.stack 4096
;声明一个ExitProcess函数
ExitProcess PROTO, dwExitCode:DWORD
.data
;在这里声明变量
val byte 10h,20h,30h,40h,50h; 定义数组
.code
main PROC
;这里写自己的代码
mov esi,offset val; 取数组首地址,用于内存窗口查找
INVOKE ExitProcess,0
main ENDP
END main
上面代码执行时esi寄存器中的值就是数组首地址,我们要用这个首地址来找到内存窗口中的数组。
首先对mov esi,offset val;
这条指令下断点,断下来后f11单步走,然后查看寄存器esi的值。这里如果没有寄存器窗口需要在前面显示内存窗口的步骤下将步骤”内存“换为”寄存器“。