编译程序的工作过程一般可以划分为哪5个基本阶段,还自始至终伴随进行哪两项工作?

编译程序的工作过程一般可以划分为哪5个基本阶段,还自始至终伴随进行哪两项工作?,第1张

1、编译程序把一个源程序翻译成目标程序的工作过程分为五个阶段:词法分析;语法分析;中间代码生成;代码优化;目标代码生成。

2、编译程序的工作过程一般自始至终伴随进行信息表管理和出错处理两项工作。

主要是进行词法分析和语法分析,又称为源程序分析,分析过程中发现有语法错误,给出提示信息。

扩展资料:

解释程序是一种语言处理程序,在词法、语法和语义分析方面与编译程序的工作原理基本相同,但在运行用户程序时,它直接执行源程序或源程序的内部形式(中间代码)。因此,解释程序并不产生目标程序,这是它和编译程序的主要区别。解释程序的工作过程如下:

1、由总控程序完成初始化工作。

2、依次从源程序中取出一条语句进行语法检查,如有错,输出错误信息;如果通过了语法检查,则根据语句翻泽成相应的指令并执行它。

3、检查源程序是否已经全部解释执行完毕,如果未完成则继续解释并执行下一条语句,直到全部语句都处理完毕。

参考资料来源:百度百科——编译程序

参考资料来源:百度百科——解释程序

C语言编译过程分成四个步骤: 

1,由.c文件到.i文件,这个过程叫预处理 

2,由.i文件到.s文件,这个过程叫编译 

3,由.s文件到.o文件,这个过程叫汇编 

4,由.o文件到可执行文件,这个过程叫链接

用gcc查看预处理过程(假设源文件叫hello.c) 

gcc -o hello.i hello.c -E 

然后用 vi hello.i 即可查看生成的预处理文件

按ESC 输入:$ 跳到预处理文件 可看到hello.c源码

宏的本质:预处理阶段的单纯的字符串替换

预处理阶段,不考虑C语法

步骤如下:

编写设计环境,良好的编程习惯和风格不仅可以使程序代码更易于读懂和修改,更重要的是,它可以使程序的结构更加合理,有助于提高程序的执行效率。

结构设计:也就是对程序的整体框架进行设计,设计出我们需要使用的模块等等,并画出流程图。

用户界面设计:设计出用于与用户交互的输入输出界面。

代码设计:在这个步骤中,我们要进行代码的编写。

调试:对程序中正在发生或可能发生的各种错误进行处理。

维护:对程序进行升级,对原有错误进行修改。

程序执行原理:

程序设计语言编写的源程序转换到机器目标程序的方式有两种:解释方式和编译方式。

解释方式下,计算机对高级语言书写的源程序一边解释一边执行,不能形成目标文件和执行文件。

编译方式下,首先通过一个对应于所用程序设计语言的编译程序对源程序进行处理,经过对源程序的词法分析、语法分析、语意分析、代码生成和代码优化等阶段将所处理的源程序转换为用二进制代码表示的目标程序。

然后通过连接程序处理将程序中所用的函数调用、系统功能调用等嵌入到目标程序中,构成一个可以连续执行的二进制执行文件。调用这个执行文件就可以实现程序员在对应源程序文件中所指定的相应功能。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11029908.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存