Linux内核设计第一周
——从汇编语言出发理解计算机工作原理
作者:宋宸宁(20135315)
一、实验过程
图1 编写songchenning5315.c文件
图2 将c文件汇编成32位机器语言
图3 将.s文件中的链接语句删除,获得最后的汇编代码
二、分析堆栈变化情况
三、总结
阐明对“计算机是如何工作的”的理解。
①计算机是依据冯诺依曼体存储结构,依据其核心思想——存储程序计算机工作模型,按程序编排的顺序,一步一步地取出指令,自动地完成指令规定的操作。
②从硬件的角度看,是通过总线连接CPU和内存,利用CPU中的eip寄存器存储当前执行指令在内存中的地址,来实现上述过程。
③从程序员的角度看,计算机通过内存保存指令和数据,通过CPU解释执行指令,程序员利用API应用程序编程接口来,实现编写代码并执行的过程。
④通过使用接近人类语言的高级语言,经过汇编语言、机器语言的翻译,最终实现人与机器的结合,使计算机能够完美的工作。
参考资料
1、《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000
2、 实验楼64位Linux虚拟机环境https://www.shiyanlou.com/courses/running/555
宋宸宁 + 原创作品转载请注明出处 + 《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000