关于编译过程,下列说法正确的是
A: 生成目标代码有时会有冗余,现代编译器一般都针对目标代码再进行优化
B: 语义分析的输入是词法分析输出的单词记号
C: 如果源程序没有语法的错误,则语法分析的过程就可以形成一棵完整的语法树
D: 变量作用域的检查,是在语法分析过程中的任务
A: 生成目标代码有时会有冗余,现代编译器一般都针对目标代码再进行优化
B: 语义分析的输入是词法分析输出的单词记号
C: 如果源程序没有语法的错误,则语法分析的过程就可以形成一棵完整的语法树
D: 变量作用域的检查,是在语法分析过程中的任务
举一反三
- 在编译中产生语法树是为了() A: 语法分析 B: 语义分析 C: 词法分析 D: 目标代码生成
- 编译器对高级语言源程序的处理过程可以划分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等几个阶段,其中,()并不是每种编译器都必需的。 A: 词法分析和语法 B: 语义分析和中间代码生成 C: 中间代码生成和代码优化 D: 代码优化和目标代码生成
- ()是在词法分析的基础上将单词序列分解成各类语法短语。 A: 语法分析 B: 语义分析 C: 中间代码生成 D: 代码优化 E: 目标代码生成
- ●编译和解释是实现高级程序设计语言翻译的两种基本形式。以下关于编译与解释的叙述中,正确的是(51)。 A: 在解释方式下,对源程序不进行词法分析和语法分析,直接进行语义分析 B: 在解释方式下,无需进行语法、语法和语义分析,而是直接产生源程序的目标代码 C: 在编译方式下,必须进行词法、语法和语义分析,然后再产生源程序的目标代码 D: 在编译方式下,必须先形成源程序的中间代码,然后再产生与机器对应的目标代码
- 编译器和解释器是两种高级语言处理程序,与编译器相比,(1)。编译器对高级语言源程序的处理过程可以划分为词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成等几个阶段:其中,代码优化和(2)并不是每种编译器都必需的。词法分析的作用是识别源程序中的(3);语法分析中的预测分析法是(4)的一种语法分析方法:编译器在(5)阶段进行表达式的类型检查及类型转换。 A: 词法分析 B: 语法分析 C: 语义分析 D: 目标代码生成
