C语言源程序的编译过程包括哪三个阶段

C语言源程序的编译过程包括哪三个阶段,第1张

词法分析阶段:读入源程序,对构成源程序的字符流进行扫描和分解,识别出单词,

语法分析阶段:机器通过词法分析,将单词序列分物做解成不同的语法短语,确定整个输入串能够构成语法上正确的程序。

语义分析阶段:检查源程序上有没有语义错误,在代码生成阶段收集类型信息

中间代码生成阶段:在进行了上述的语法分析和语义分析阶段的工作之后,有的编译程序将源程序变成一种内部表示形式

代码优化:这一阶段的任务是对前一阶段产生的中间代码进行变换或进行改备渗造,目的是使生成的目标代码更为高效,即省时间和省空间

目标代仿蚂脊码生成:这一阶段的任务是把中间代码变换成特定机器上的绝对指令代码或可重定位的指令代码或汇编指令

预处理,词法分析,文法分析,生成中间代码,生成目标代码。

1、预处理:导入源程序并保存(C文件)。

2、编译:将源程序转换为目标文件(Obj文件)。

3、链接:早拆戚将目标文件生成为可执行文件(EXE文件)。

扩展资料:

将C语言代码分为程序的几个阶段:

首先,源代码陆陵文件测试。以及相关的头文件,比如stdio。H、由预处理器CPP预处理为.I文件。预编译的。

编译过程是对预处理文件进行词法分析、语法分析、语义分析和优化,御中生成相应的汇编代码文件。这个过程往往是整个程序的核心部分。

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

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

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

扩展资料:

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

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

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

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

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

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


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存