问题 单项选择题

以下关于编译系统对某高级语言进行翻译的叙述中,错误的是()。

A.词法分析将把源程序看作一个线性字符序列进行分析

B.语法分析阶段可以发现程序中所有的语法错误

C.语义分析阶段可以发现程序中所有的语义错误

D.目标代码生成阶段的工作与目标机器的体系结构相关

答案

参考答案:C

解析:

在词法分析阶段,源程序可以简单地被看作是一个多行的字符串。这一阶段的任务是对源程序从前到后(从左到右)逐个字符进行扫描,从中识别出一个个“单词”符号;语法分析的任务是在词法分析的基础上,根据语言的语法规则将单词符号序列分解为各类语法单位,检查其中的语法错误;语义分析阶段主要检查源程序是否包含语义错误,但是一般编译器难以检查出动态语义错误,显然C选项描述的是错误的;目标代码生成是编译器工作的最后一个阶段。这一阶段的任务是把中间代码变化为特定机器上的绝对指令代码、可重定位的指令代码或汇编指令代码,这个阶段的工作与具体的机器密切相关。

单项选择题
单项选择题 A1/A2型题