如何在VS2008中查看EAX寄存器下部发生了什么?
我正在做一些汇编作业,并认为了解正在发生的事情的最佳方法是观察程序运行时寄存器中发生的情况。在 Visual Studio 中,您可以查看寄存器,但我正在执行一项操作,该操作仅更改其中一个寄存器的低 8 位中的内容,因此我不确定应该查看什么。有人可以帮我吗?
这是我正在运行的问题和代码:
按顺序执行以下每条指令后目标操作数的十六进制值是多少?
TITLE MASM Template (main.asm)
INCLUDE Irvine32.inc
.data var1 SBYTE -4, -2, 3, 1
.code main PROC
call Clrscr
mov al, var1 mov ah, [var1+3]
exit main ENDP
END main
我很确定第一个语句后的答案是 -4和 1 在第二条语句之后,但我想在寄存器中看到它。
我的寄存器窗口必须与 VS 中的一样:
I am doing some assembly homework and thought the best way to get my head around what is going on is to watch what happens in the registers as the program runs. In Visual Studio You can view the registers but I am doing an operation that only changes things in the lower 8-bits of one of my registers so im not sure what I should be looking at. Can anyone help me out?
Here's the question and the code I'm running:
What will be the hexadecimal value of the destination operand after each of the following instructions execute in sequence?
TITLE MASM Template (main.asm)
INCLUDE Irvine32.inc
.data var1 SBYTE -4, -2, 3, 1
.code main PROC
call Clrscr
mov al, var1 mov ah, [var1+3]
exit main ENDP
END main
Im pretty sure the answer is -4 after the first statement and 1 after the second statement but I want to see it in the registers.
and the register window i have to look as in VS:
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
ah
和al
寄存器只是eax
低两个字节的别名,因此您可以只监视eax
code> 在寄存器窗口中输入。在您的示例中,ah
是0x36
,al
是0x65
。您可能还需要 mov al, [var1] 来获取该地址处的值,但我对此不确定。The
ah
andal
registers are just aliases for the lower two bytes ofeax
, and so you can just monitor theeax
entry in the register window. In your example,ah
is0x36
andal
is0x65
. You might also needmov al, [var1]
to get the value at that address, but I am not sure about that.