这篇文章主要讲解了“C语言再续编译执行分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言再续编译执行分析”吧!
从键盘上读取a.out命令
当我们打开我们的终端的时候,shell程序会执行它的指令,等待我们的输入。
当我们在键盘上输入"a.out",敲回车时,shell就知道我们结束了命令的输入。然后shell的指令就会逐一读取目标文件a.out的代码和数据到寄存器,再把代码和数据拷贝到主存储器。
流程图如下
那么在硬件中是如何奔跑的呢?
科普普及:
1、主存用来存放指令和指令处理的数据。
2、处理器(CPU的简称)是解释(或执行)存储在主存中指令的引擎。在任何一个时间点上,CPU中的PC(程序计数器)都指向主存中的某条机器语言指令。
3、有一种DMA(直接存储器存取)技术,数据可以不通过处理器而直接从磁盘到达主存储器。
从存储器写输出串到显示器
1、 一旦a.out目标文件中的代码和数据被加载到了主存储器,CPU就开始执行main.c程序的主程序中机器语言指令。
2、 这些指令将"hello,world\n"串中的字节从主存储器中拷贝到寄存器文件。
3、 再从寄存器中文件拷贝到显示设备,最终显示在屏幕上。
流程图:
那么这些在硬件中是如何奔跑的呢?
感谢各位的阅读,以上就是“C语言再续编译执行分析”的内容了,经过本文的学习后,相信大家对C语言再续编译执行分析这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!