软考
APP下载

2023年上半年嵌入式系统设计师知识点:编译器工作的过程

编译器的工作包含哪些阶段, 一般情况编译器的工作可以分成五个阶段,下面就是编译器工作的过程介绍。

1、词法分析阶段

是编译过程的第一阶段,其任务是对源程序从前到后(从左到右)逐个字符扫描,从中识别出一个个“单词”符号。

词法分析过程的依据是语言的词法规则,即描述“单词”结构的规则。

2、语法分析阶段

其任务是在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单位。

通常语法分析是确定整个输入串是否构成一个语法上正确的程序。

一般来说,通过编译的程序,不存在语法上的错误。

3、语义分析阶段

其任务是主要检查源程序是否包含静态语义错误,并收集类型信息供后面的代码生成阶段使用。

语义分析的一个主要工作是进行类型分析和检查。

4、中间代码生成

其任务是根据语义分析的输出生成中间代码。

5、目标代码生成

是编译器工作的最后一个阶段。其任务是把中间代码变换成特定机器上的绝对指令代码、可重定位的指令代码或汇编指令代码。本阶段与具体机器密切相关。

6、符号表管理

符号表的作用是记录源程序中各个符号的必要信息,以辅助语义的正确性检查和代码生成,在编译过程中需要对符号表进行快速有效地查找、插入、修改和删除等操作。

备考资料 免费领取:嵌入式系统设计师报考指南+考情分析+思维导图等 立即下载
真题演练 精准解析历年真题,助你高效备考! 立即做题
相关阅读
嵌入式系统设计师题库