大学课程《电力行业信息安全与攻防技术》教学PPT课件:[9.3.3]调试学习在 Linux下程序的函数.pptxVIP

  • 2
  • 0
  • 约小于1千字
  • 约 20页
  • 2026-05-20 发布于贵州
  • 举报

大学课程《电力行业信息安全与攻防技术》教学PPT课件:[9.3.3]调试学习在 Linux下程序的函数.pptx

调试学习在Linux下程序的函数

任务导入任务目标任务讲解任务总结

C语言程序运行的底层秘密

栈帧变化执行流程参数传递

任务导入任务目标任务讲解任务总结

知识目标能力目标素养目标掌握函数调用的底层机制及SystemVABI规范熟练运用GDB调试器动态观察参数传递、栈帧变化及返回值处理流程培养严谨的调试态度和系统级问题分析能力

任务导入任务目标任务讲解任务总结

栈帧变化重点观察参数传递函数调用机制函数执行GDB调试器实验

实验执行命令gdb./class3启动GDB并加载class3程序执行breakmain设置断点执行run命令

实验disassemblemainmain函数的执行流程:保存rbp寄存器,设置新的栈帧将参数2移动到esi寄存器,参数1移动到edi寄存器调用add函数

实验stepstep命令会执行当前指令并进入函数调用内部01next命令则会越过函数调用02

disassembleaddadd函数的反汇编代码分析函数内部的参数处理分析函数内部的计算过程

实验add函数开始执行标准序言:保存rbp、设置新栈帧函数将寄存器中的参数值复制到栈帧中:edi的值保存到[rbp-0x14]esi的值保存到[rbp-0x18]寄存器+栈的混合传参模式

实验a存储在[rbp-0x14]b存储在[rbp-0x18]局部变量sum可能存储在[rbp-0x4]位置

next

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档