【发布时间】:2012-04-14 05:07:57
【问题描述】:
如何定位改变具体内存地址的汇编代码?
例如: 现在:
地址值
0x730b54 1000
然后值变了:
地址值
0x730b54 6000
我想知道修改这块内存值的汇编代码。我可以这样做吗?
就像 Cheat Engine 的“找出写入此地址的内容”。
【问题讨论】:
如何定位改变具体内存地址的汇编代码?
例如: 现在:
地址值
0x730b54 1000
然后值变了:
地址值
0x730b54 6000
我想知道修改这块内存值的汇编代码。我可以这样做吗?
就像 Cheat Engine 的“找出写入此地址的内容”。
【问题讨论】:
通常的方法是使用调试器,设置为在写入地址时中断。
如果您想要做一些事情来进行监控而不是其他任何事情,这是可能的,但是代码是高度特定于平台的,因此您需要告诉我们您想要开发的平台,然后才能得到任何人的帮助。
我还要注意,即使您正在监视的代码是用汇编语言编写的,也没有特别的理由要以汇编语言编写监视代码。像 C 或 C++ 这样的东西非常适合这项任务,尽管它确实有助于(很多)在汇编语言级别上拥有相当多的知识。即使您在结构中检索 then 以便 C 可以使用它们,您仍然最终会直接修改目标进程的寄存器以对其进行调试。
【讨论】: