0

我想在堆上声明一个新变量(我不想使用堆栈)。我该怎么做?我想知道指令?假设有 10 个变量使用堆栈,我想更改它们的位置并将它们放在堆上。

4

1 回答 1

3

简单的答案,用 C 编写一个简单的应用程序,使用getmem.
拿起反汇编器,查看编译器生成的 x64 代码。
您必须在汇编程序中重现相同的代码。

更长的答案:
没有将东西放在堆上的 x64 指令,大约需要 100 条指令才能做到这一点,这就是人们调用库函数的原因。
库函数是高度优化的,所以不要费心重新发明那个轮子。
获得内存引用后,它只是一个简单的指针。汇编擅长指针操作,因此应该很容易。

于 2013-10-16T01:46:08.807 回答