在实验楼环境下采用vim编辑器,编写一段简单c程序,并探究c语言在汇编语言下的转换格式和内容。 将c语言文件转化为32的汇编语言,代码中函数调用内核的情况,堆栈中的变化。
2.3.1 步骤
编写的C语言程序
gcc编译代码
转换为汇编语言
去掉辅助信息
2.3.2 代码分析
调用流程 main函数
汇编语言调用堆栈变化过程
初始阶段,esp、ebp指针都是指向1000这个位置(假设堆栈大小为1000)
执行main函数
执行
执行跳转到f函数执行
执行
-执行跳转到g函数
执行
执行
执行
执行
执行
执行
执行
以上展示了一段简单代码调用函数的过程.
展示了整个堆栈从占用->释放的过程.

总结