《杭电-编译原理试卷三及答案(共9页).doc》由会员分享,可在线阅读,更多相关《杭电-编译原理试卷三及答案(共9页).doc(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上试卷(三):一、 选择1.下面说法正确的是:AA 一个正规文法也一定是二型文法B 一个二型文法也一定能有一个等价的正规文法2.文法GA:Ab AAB BAb Ba是(A):A 二型文法B 正规文法3.下面说法正确的是(B):A lex是一个词法分析器B yacc是一个语法分析器的生成器4.一个LR(1)文法合并同心集后,如果不是LALR(1)文法必定存在(B):A 移进-归约冲突B 归约-归约冲突5 PL/0语言编译程序使用递归子程序法进行语法分析,他的文法必须满足(A):A LL(1)文法B SLR(1) 文法二、 问答题问答第1题(6分)试对 repeat x:=
2、b until ba or (ba goto ( ) ( ) 真出口链( ) (3) goto ( ) ( ) (4) if ba goto ( 8 ) ( 6 ) 真出口链( 6,2 ) (3) goto ( 4 ) ( 1 ) (4) if b0 用正规文法。(2) L2= 0na 1nbmcm| n0,m 0 用二型文法(1)解:描述L1语言的正规文法如下:ScAAaA|BBdDDbD|(2)解:描述L2语言的二型文法如下:SABA0A1|0a1BbBc|问答第8题(5分)文法GS为:SSdT | TTTG | GG(S) | a试给出句型(SdG)a的短语、简单(直接)短语、句柄和最左
3、素短语。解:句型(SdG)a的短语:(SdG)a 、(SdG) 、SdG 、G 、a简单(直接)短语:G 、a句柄:G最左素短语:SdG问答第9题(5分) 给出与正规式 R(aba)*((ba)*|b)b等价的NFA。问答第10题(6分)将下图的NFA确定化为DFA。解:用子集法确定化如下表I Ia Ib 状态 X,0,1,30,1,3.2,3,Y.1,3.2,Y.Y. 0,1,30,1,31,3.1,3. 2,3,Y2,3,YY.2,Y.Y. X1234Y 确定化后如下图问答第11题(5分)将文法GS 改写为等价的GS,使GS不含左递归和左公共因子。GS: SA AB|AS BaB|a解:文
4、法GS 改写为等价的不含左递归和左公共因子的GS为:S AA BAASA|B aBBB|问答第12题(10分) 判断下面文法是否为LL(1)文法,若是,请构造相应的LL(1)分析表。SaDDSTe|TbMMbHHM|解: 文法的 FIRST集和FOLLOW集非终结符 FIRST集 FOLLOW集 S a. #,b D a, #,b T b. e. M b. e. H b, e. 由于select(DSTe)select(D)=a# ,b= select(HM)select(H)= b e = 所以该文法是LL(1)文法,LL(1)分析表如下表。 LL(1)分析表 a e b # S aD. D STe T bM M bH H M. 表中不含多重入口也可说明文法是LL(1)的专心-专注-专业