四川大学编译原理期末试卷4套+复习资料(共7页).doc
《四川大学编译原理期末试卷4套+复习资料(共7页).doc》由会员分享,可在线阅读,更多相关《四川大学编译原理期末试卷4套+复习资料(共7页).doc(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上四川大学期末考试试题A(闭卷)(2012-2013学年第2学期)一简答题1.符号表的作用是什么?为了达到对其插入删除等操作的复杂度为O(1),需将其组织成什么数据结构。2.分析树和语法书的区别。3.什么是正规集。4.什么叫句子,什么叫句型。5.二义文法一定不是LL(1)二给定文法SAAA+A|B+By1. 画出句子y+y+的分析树2.给出句子y+y+的最右推导三给定正则表达式(a|b)*abb1.使用thompson构造法构造等价的NFA。2.用子集法对(1)得到的NFA进行确定化和最小化,得到等价的最小DFA。3.使用双层多分支语句实现(2)得到的DFA。写出伪代码
2、。四给定文法statementif-stmt|other|eif-stmtif(exp)statementelse-partelse-partelsestatement|eexp0|1写出递归下降子程序的伪代码。五 给定文法SSX|aXe|+SY|YbYe|-SXc1. 对文法中的每一个非终结符构造First集和Follow集。2.构造LL(1)分析表3.基于分析表,使用LL(1)对句子a+a-ac进行自顶向下的语法分析,给出每一步的动作及分析栈和输入串的变化情况。六给定文法EE+T|TTT*F|FF(E)|id1.构造LR(0)项目的DFA:2.构造SLR(1)的分析表3.利用2得到的分析表
3、对id+id*id进行自顶向下的语法分析。七1.给出构造Follow集合的算法描述2.给出SLR(1)算法的描述四川大学期末考试试题(闭卷)(2010-2011学年第2学期)1.简答题(12分)(1)编译器的前端和后端分别包括哪几个阶段?前后端分开有什么好处?(2)解释器和编译器有什么本质区别?(3)词法分析和语法分析的功能分别是什么?(4)分析树与抽象语法树有什么不同?2.已知字母表 = a, b, c,定义在上的语言L具有以下特征:(5分)(1)若出现a,则其后至少紧跟两个c;(2)若出现b,则其后至少紧跟一个c。试给出可以产生语言L的正规表达式。3.文法如下:(8分)expexp add
4、opterm |termaddop +|-termtermmulopfactor| factormulop *factor (exp)|number(1) 给出句子3*)58(+的最左推导;(2)构造(1)中句子的抽象语法树。4.文法如下:(10分)expexp andexp|exporexp|not exp|(exp)|TRUE|FALSE(1)此文法是否为二义文法?为什么?(2)试将文法改写为非二义文法,要求运算符优先级由低到高分别是or、and、not,且and和or是左结合的,not是右结合的。5.DFA构造题(20分)已知正规表达式bbca*)|(1)使用Thompson构造方法构造
5、对应的NFA;(2)用子集构造法将得到的NFA确定化为DFA;(3)将得到的DFA最小化。6.LL(1)分析题(20分)文法如下:A Pa P bPa|bQb Q Qa|a(1)消除文法左递归,提左因子;(2)为所得文法的每个非终结符构造First集和Follow集;(3)所得文法是LL(1)文法吗?为什么?(4)构造所得文法的LL(1)分析表。7.LR(k)分析题(25分)文法如下:declaration type list-vartype int|floatvar -list id,var -list|id(1)构造文法的LR(0)项目的DFA;(2)构造SLR(1)分析表;(3)这个文法
6、是SLR(1)文法吗?如果不是,请说明原因;(4)给出对应输入串intx,y,z进行SLR(1)分析的步骤(要求给出分析过程中每一步的详细情况,包括:分析栈、输出串及执行的动作)。四川大学期末考试试题A(闭卷)(2008-2009学年第2学期)一、简答题(本大题共4小题,每小题3分,共12分)1.按照次序写出一个完整的编译器的各个阶段以及各个阶段的输入输出。2.一个文法必须满足哪些条件才是LL(1)的?3.给出上下文无关文法(Context-Free Grammar)的定义。4.写正规表达式:所有不以0开头的十进制偶数的集合。二、算法题(本答题共1小题,每小题8分,共8分)给出基于DFA进行词
7、法分析的表驱动的实现算法。三、 分析题(本答题共3小题,每小题分数见题首,共10分)文法如下:SSS+|SS*|a+1.(4分)给出句子aa+a*的最右推导;2.(3分)构造(1)中句子的分析树;3.(3分)这个文法产生的语言是什么?四、 文法二义性分析题(本大题共2小题,每小题5分,共10分)文法如下:expexp opexp|(exp)|TRUE |FALSEOp and|or1.此文法是否为二义文法?为什么?2.试将文法改写成非二义文法,要求运算符op是左结合的,且and的优先级高于or的优先级。五、 DFA构造题(本大题共3小题,每小题分数见题首,共20分)六、已知正规表达式(a|b)
8、*c*b1.(6分)使用Thompson构造方法构造对应的NFA;2.(8分)用子集构造法将得到的NFA确定化为DFA;3.(6分)将得到的DFA最小化。六、LL(1)分析题(本大题共4小题,每小题5分,共20分)文法如下:SSLS |aLbbL|b1.消除文法左递归,并提左因子;2.为所得文法的每个非终结符构造First集和Follow集;3.构造所得文法的LL(1)分析表;4.所得文法是LL(1)文法吗?为什么?七、LR(k)分析题(本大题共3小题,每小题分数见题首,共20分)文法如下:S(A)|bBAa|aBBA a b1.(10分)构造文法的LR(0)项目的DFA;2.(6分)构造SL
9、R(1)分析表;3.(4分)这个文法是SLR(1)文法吗?请说明是或不是的原因。四川大学期末考试试题A(闭卷)(2007-2008学年第2学期)1.(9分)简答题(1)编译器的前端和后端分别包括哪几个阶段?前后端分开有什么好处?(2)在建立LL(1)语法分析器的时候,提左因子和消除左递归的目的分别是什么?(3)词法分析和语法分析的功能分别是什么?2.(5分)已知字母表=a,b,c,定义在上的语言L具有以下特征:(1)若出现a,则其后至少紧跟两个c;(2)若出现b,则其后至少紧跟一个c。试给出可以产生语言L的正规表达式。3.(6分)文法如下,S(L)|a LL,S|S(1) 证明句子(a,(a,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 四川大学 编译 原理 期末试卷 复习资料
限制150内