gpt4 book ai didi

C——修改栈基指针地址

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:13:41 25 4
gpt4 key购买 nike

我想为每个函数调用在堆上分配一个栈帧,但为此我需要为每个函数修改栈基指针。

有没有办法在 Linux 下用 C 获取那个指针并修改它?

最佳答案

手动修改 ebp 的唯一(实用)方法是内联汇编或仅在汇编中编写一个函数。如果你有一个汇编函数,你可以做这样的事情(我对 x86 汇编没有真正的经验)

; void function(void* heapPtr)

function:
push ebp
mov reg, esp
mov esp, [esp+4]
mov ebp, esp
...
mov esp, reg
pop ebp
ret

关于C——修改栈基指针地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10064911/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com