Assembly 反汇编代码中的ebp和esp是什么意思?

Assembly 反汇编代码中的ebp和esp是什么意思?,assembly,malware,ida,Assembly,Malware,Ida,下面是我的代码。帮助我理解以下代码的含义: push ebp mov ebp, esp sub esp, 230h 这是一个函数序言 将旧的基指针推送到堆栈上,以便以后可以恢复: push ebp 将堆栈指针的值指定给基指针,然后将在旧堆栈帧的顶部创建一个新的堆栈帧: mov ebp, esp 通过减小或增大堆栈指针的值(取决于堆栈是向下还是向上增长),进一步移动堆栈指针: 此处,230h立即值是堆栈上保留的供函数中本地使用

下面是我的代码。帮助我理解以下代码的含义:

   push    ebp
   mov     ebp, esp
   sub     esp, 230h
这是一个函数序言

将旧的基指针推送到堆栈上,以便以后可以恢复:

   push    ebp
将堆栈指针的值指定给基指针,然后将在旧堆栈帧的顶部创建一个新的堆栈帧:

   mov     ebp, esp
通过减小或增大堆栈指针的值(取决于堆栈是向下还是向上增长),进一步移动堆栈指针:

此处,
230h
立即值是堆栈上保留的供函数中本地使用的字节数

以类似的方式,函数尾声反转序言的动作,并将控制权返回给调用函数


检查此相关问题:

related:某些编译器的可能副本提供了不使用帧指针的选项,这将释放ebp以用作通用寄存器(它仍需要保存)。
   sub     esp, 230h