通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的

Linux内核分析之第一周作业博客


Main.c代码:

 通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第1张图片 

使用gcc命令编译成汇编代码:

 

最终汇编代码如下(已经省略了部分自动生成的解释代码):

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第2张图片

汇编代码的工作过程及堆栈的变化如下,首先从main函数开始:

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第3张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第4张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第5张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第6张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第7张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第8张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第9张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第10张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第11张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第12张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第13张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第14张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第15张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第16张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第17张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第18张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第19张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第20张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第21张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第22张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第23张图片

通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的_第24张图片


 

总结:通过此实验汇编了一个简单的C程序,用于分析汇编代码并理解计算机中堆栈的变化。

 

邱在辉+原创作品+《Linux内核分析》

MOOC课程http://mooc.study.163.com/course/USTC-1000029000

你可能感兴趣的:(Linux内核分析学习笔记)