- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理期末考试复习题
编译原理参考题目第一套一、判断题1.用高级语言书写的源程序都必须通过编译,产生目标代码后才能投入运行 ”这种说法。( N)2.若一个句型中出现了某产生式的右部,则此右部一定是该句型的句柄。( N)3.一个句型的句柄一定是文法某产生式的右部。 (Y )4.在程序中标识符的出现仅为使用性的。 ( N)5.仅考虑一个基本块,不能确定一个赋值是否真是无用的。 (Y )6.削减运算强度破坏了临时变量在一基本块内仅被定义一次的特性。 (Y )7.在中间代码优化中循环上的优化主要有不变表达式外提和削减运算强度。 (N )8.算符优先关系表不一定存在对应的优先函数。 ( N)9.数组元素的地址计算与数组的存储方式有关。 (N )10.编译程序与具体的机器有关,与具体的语言无关。 (N )参考答案:1、×2、×3、√4、×5、√6、√7、×8、×9、×10、×二、选择题1.通常一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目标代码生成等五个部分,还应包括_____。A.模拟执行器B.解释器C.表格处理和出错处理 D.符号执行器2.文法 G[N]= ( {b} , {N , B} , N , {N→b│bB , B→bN} ),该文法所描述的语言是 A. L(G[N])={bi│i≥0} B. L(G[N])={b2i│i≥0} C. L(G[N])={b2i+1│i≥0} D. L(G[N])={b2i+1│i≥1}3.一个句型中的最左_____称为该句型的句柄。 A.短语B.简单短语 C.素短语D.终结符号4.设 G 是一个给定的文法, S 是文法的开始符号,如果 S-x( 其中 x∈V*), 则称 x 是文法 G 的一个_____。 A.候选式 B.句型 C.单词D.产生式5.文法 G[E] :E→T∣E + T T→F∣T ﹡ F F→a∣( E )该文法句型 E + F ﹡ (E + T) 的简单短语是下列符号串中的_____。①( E + T )②E + T ③F ④ F ﹡ (E + T) A.①和③ B.②和③ C.③和④ D.③6.若一个文法是递归的,则它所产生的语言的句子_____。A.( ) 是无穷多个 B.( ) 是有穷多个 C.( ) 是可枚举的 D.( ) 个数是常量7.词法分析器用于识别_____。 A.( ) 句子 B.( ) 句型 C.( ) 单词 D.( ) 产生式8.在语法分析处理中, FIRST 集合、 FOLLOW 集合、 SELECT 集合均是_____。 A. ( ) 非终极符集B.( ) 终极符集 C.( ) 字母表D. ( ) 状态集9.在自底向上的语法分析方法中,分析的关键是_____。 A.( ) 寻找句柄B.( ) 寻找句型C.( ) 消除递归D.( ) 选择候选式10.在 LR 分析法中,分析栈中存放的状态是识别规范句型_____的 DFA 状态。 A.( )句柄B.( ) 前缀C.( )活前缀D.( ) LR(0) 项目参考答案:1、C2、C3、B4、B5、B6、A7、C8、B9、D10、C三、填空题1.设G是一个给定的文法,S是文法的开始符号,如果S-x( 其中 x∈VT*), 则称 x是文法的一个__句子___。2.递归下降法不允许任一非终极符是直接左递归的。3.自顶向下的语法分析方法的基本思想是:从文法的_开始符号__开始,根据给定的输入串并按照文法的产生式一步一步的向下进行_直接推导_,试图推导出文法的__句子__,使之与给定的输入串_匹配_。4.自底向上的语法分析方法的基本思想是:从输入串入手,利用文法的产生式一步一步地向上进行_直接规约_ ,力求归约到文法的__开始符号___。5.常用的参数传递方式有_传地址_,传值和传名。6.在使用高级语言编程时,首先可通过编译程序发现源程序的全部_语法__错误和语义部分错误。参考答案:1.句子2.左3.开始符号直接推导句子匹配4.直接归约开始符号5.传地址6.语法四、简答题1. 已知文法 G[S] 为:S→dAB A→aA|a B→Bb|εG[S] 产生的语言是什么?参考答案:答:G[S]产生的语言是L(G[S])={danbm│n≥1,m≥0}。2. 简述 DFA 与 NFA 有何区别 ? 参考答案:答:DFA与NFA的区别表现为两个方面:一是NFA可以若干个开始状态,而DFA仅只一个开始状态。另一方面,DFA的映象M是从K×∑到K,而NFA的映象M是从K×∑到K的子集,即映象M将产生一个状态集合(可能为空集),而不是单个状态。5. 何谓优化?按所涉及的程序范围可分为哪几级优化?参考答案:(1)优化:对程序进行各种等价变换,使得从变换后的程序出发,能产生更有效的目标代码。 (2) 三种级别
文档评论(0)