问题 单项选择题

编译过程中,对高级语言程序语句的翻译主要考虑声明语句和可执行语句。对声明语句,主要是将需要的信息正确地填入合理组织的(19)中;对可执行语句,则是(20)

(20)处填()。

A.翻译成机器代码并加以执行

B.转换成语法树

C.翻译成中间代码或目标代码

D.转换成有限自动机

答案

参考答案:C

解析:

编译程序的功能是把用高级语言书写的源程序翻译成与之等价的目标程序(汇编语言或机器语言)。编译程序的工作过程可以分为6个阶段:词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成,实际的编译器中可能会将其中的某些阶段结合在一起进行处理。各个阶段逻辑上可以划分为前端和后端两部分。前端包括从词法分析到中间代码生成各个阶段的工作,后端包括中间代码优化、目标代码生成与优化等阶段。这样,以中间代码为分水岭,把编译器分成了与机器有关的部分和与机器无关的部分。符号表的作用是记录源程序中各个符号的必要信息,以辅助语义的正确性检查和代码生成,在编译过程中需要对符号表进行快速有效地查找、插入、修改和删除等操作。

单项选择题
单项选择题