码迷,mamicode.com
首页 > 其他好文 > 详细

32 位机器下关于堆栈工作机制的简单分析

时间:2015-03-03 21:56:27      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:

周松  原创作品转载请注明出处  《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000 

这篇博客是对《Linux 内核分析》这门课程的作业。

这是 C 语言代码:

int g(int x)
{
  return x + 3;
}
 
int f(int x)
{
  return g(x);
}
 
int main(void)
{
  return f(8) + 1;
}

去除链接信息后的 32 位 AT&T 格式的汇编代码

技术分享

 

技术分享

 

技术分享

总结:程序通过堆栈来调用函数,堆栈保存了程序的执行状态,每个被调用函数都有自己的堆栈环境,通过 enter 宏指令来进入自己函数的堆栈,通过 leave 宏指令退出自己的堆栈。

32 位机器下关于堆栈工作机制的简单分析

标签:

原文地址:http://www.cnblogs.com/songzhou/p/4311955.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!