问题
单项选择题
编译程序分析源程序的阶段依次是()。
A.词法分析、语法分析、语义分析
B.语法分析、词法分析、语义分析
C.语义分析、语法分析、词法分析
D.语义分析、词法分析、语法分析
答案
参考答案:A
解析:
本题考查程序语言翻译的基础知识。
编译程序是一种将高级语言程序翻译成目标程序的系统软件,它对源程序的翻译过程分为词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成,以及符号表管理和出错处理。
源程序可以被看成是一个字符串。词法分析是编译过程的第一阶段,其任务是对源程序从前到后(从左到右)逐个字符地扫描,从中识别出一个个的“单词”符号。语法分析的任务是在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单位,如“表达式”、“语句”、“程序”等。语义分析阶段主要检查源程序是否包含语义错误,并收集类型信息供后面的代码生成阶段使用。只有语法和语义都正确的源程序才能被翻译成正确的目标代码。