有没有办法在调试时使用 IDA 免费软件查看寄存器中的值?

问题描述

我正在使用 IDA 免费软件调试器来调试 .exe 文件。我在程序中放置了一个断点。如下图所示。我需要知道此时“eax”寄存器中的值是什么(这在下图中以黄色突出显示)。有没有办法找到这个值?

解决方法

寄存器转储就在显示屏的右上角。它显示了 64 位寄存器,但 EAX 只是 RAX 的低 32 位(参见 What do the E and R prefixes stand for in the names of Intel 32-bit and 64-bit registers?)。所以只需阅读最右边的 8 个十六进制半字节。程序中此时 EAX 的值为 0xCB7475E2

enter image description here

您同样可以读取其他部分寄存器的值。 AX = 0x76E2AH = 0x76AL = 0xE2