编译原理的习题加答案
一、填空题:01.编译程序的工作过程_般可以划分为词法分析,语法分析,语义分析,之间代码生成, 代码优化 等几个基本阶段,同时还会伴有表格处理 和出错处理.02.若源程序是用高级语言编写的,目标程序是
一、填空题: 1- 01.编译程序的工作过程_般可以划分为词法分析,语法分析,语义分析,之间代码生成,代码 优化等几个基本阶段,同时还会伴有表格处理和出错处理. 1- 02.若源程序是用高级语言编写的,目标程序是机器语言程序或汇编程序,则其翻译程序称为 编译程序. 1-03.编译方式与解释方式的根本区别在于是否生成目标代码. 1-04.翻译程序是这样一种程序,它能够将用甲语言书写的程序转换成与其等价的用乙语言书写的 程序. 1-05.对编译程序而言,输入数据是源程序,输出结果是目标程序. 1-06.如果编译程序生成的目标程序是机器代码程序,则源程序的执行分为两大阶段:西逢阶段和 运行阶段.如果编译程序生成的目标程序是汇编语言程序,则源程序的执行分为三个阶段:编译阶 段,汇编阶段和运行阶段. 1- 07.若源程序是用高级语言编写的,目标程序是机器语言程序或汇编程序,则其翻译程序称为 编译程序。 1- 08.-个典型的编译程序中,不仅包括词法分析、语法分析、中间代码生成、代码优化、目标 代码生成等五个部分,还应包括表格处理和出错处理。其中,词法分析器用于识别屈I司。 1- 09.编译方式与解释方式的根本区别为是否生成目标代码。 2- 01.所谓最右推导是指:任何一步a=B都是对a中最右非终结符进行替换的。 2- 02.一个上下文无关文法所含四个组成部分是一组终结符号、一组非终结符号、一个开始符号、 一组产生式。 2-03.产生式是用于定义语法成分的一种书写规则。 2-04.设G[S]是给定文法,则由文法G所定义的语言L(G)可描述为:L(G)=(x|S^x.xeV*}。 T 2-05.设G是一个给定的文法,S是文法的开始符号,如果S三x(其中xeV*),则称x是文法的一 个句型。 2- 06.设G是一个给定的文法,S是文法的开始符号,如果S三・x(其中xe"),则称x是文法的_ 个句了。 3- 01.扫描器的任务是从源程序中识别出一个个单词符号。 4- 01.语法分析最常用的两类方法是自上而下和自下而上分析法。 4- 02.语法分析的任务是识别给定的终极符串是否为给定文法的句壬。 4- 03.递归下降法不允许任一非终极符是直接左递归的。 4- 04.自顶向下的语法分析方法的关键是如何选择候选式的问题。 4-05.递归下降分析法是自顶向上分析方法。 4- 06.自顶向下的语法分析方法的基本思想是:从文法的开始符号开始,根据给定的输入串并按 照文法的产生式一步一步的向下进行直接推导,试图推导出文法的句子,使之与给定的输入串 匹配。 5- 01.自底向上的语法分析方法的基本思想是:从给定的终极符串开始,根据文法的规则一步一 。 步的向上进行直接归约,试图归约到文法的开始符号 5- 02. 自底向上的语法分析方法的基本思想是:从输入串入手,利用文法的产生式一步一步地向

