我们重新调试我们的程序,然后走到401020处


****核心原理学习笔记(十七):栈帧4:开始执行add()函数&生成栈帧


然后我们走到401023处,观察一下EBP的值:


****核心原理学习笔记(十七):栈帧4:开始执行add()函数&生成栈帧


****核心原理学习笔记(十七):栈帧4:开始执行add()函数&生成栈帧


此时的EBP指向了19FF38,我们记录一下。



然后我们继续往下走,走进add()函数里面:


****核心原理学习笔记(十七):栈帧4:开始执行add()函数&生成栈帧



上图显示了add()函数栈帧的形成,


我们走两步:


****核心原理学习笔记(十七):栈帧4:开始执行add()函数&生成栈帧


我们发现此时的EBP存放的就是main函数的EBP,也就是main函数的EBP被备份到了栈中,然后EBP被设置为一个新值。



相关文章:

  • 2021-11-15
  • 2022-01-02
  • 2021-08-18
  • 2021-10-23
  • 2021-12-01
  • 2022-03-08
  • 2021-11-19
猜你喜欢
  • 2022-01-05
  • 2021-04-26
  • 2021-05-04
  • 2021-05-04
  • 2021-09-19
  • 2021-04-23
  • 2022-12-23
相关资源
相似解决方案