- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《编译原理》期末总复习 考试题型及分数分布 填空题(10分) 单选题(20分) 判断题(10分) 解析题(60分) 第二章???? 文法与形式语言简介 (1)给出句型或句子最左推导或最右推导(规范推导); (2)画出句型或句子的语法树; (3)求句型的短语、简单短语、句柄; (4)判断一个文法是二义性的文法 P28#3 规范推导: aa+a* P28#4 只含有4个符号的句子: P28#5 S∷=AB A∷=aA︱ε B∷=bBc︱bc P28#7 已知文法G[E]: E::=E+T|T T::=T*F|F F::=(E)|i 1、试给出句子i*(i+i)的规范推导; 2、画出相应的语法树;(注意:相同的叶子节点用不同的下标加以区分,如:i1、i2、i3…) 3、指出该句子所有的短语、简单短语、句柄。 存在的问题 给出的推导不是规范推导; 一次使用多条规则; 没有标明句柄所在的位置; 不是从文法的开始符号进行推导; 句子i*(i+i)的规范推导 E?T? T*F? T*(E) ? T*(E+T) ? T*(E+F) ? T*(E+i) ? T*(T+ i) ? T*(F + i) ? T*(i + i) ?F* (i + i) ?i * (i + i) 句子i*(i+i)的语法树 短语、简单短语、句柄 为了区分相同的短语,可以采用加下标的方法。 i1、i3是相对于非终结符号F、T的短语、简单短语; i2是相对于非终结符号F、T、E的短语、简单短语; i2+i3是相对于非终结符号E的短语; (i2+i3)是相对于非终结符号F的短语; i1*(i2+i3)是相对于非终结符号T、E的短语; i1是句柄; P28#8 S∷=S*S|S+S|(S)|a 已知文法G[S]: S::=iSeS|iS|i 试说明该文法是二义性的文法。 句子iiiei两棵不同的语法树 第三章 词法分析 1、正规文法和有限自动机的等价性 2、正规式和有限自动机的等价性 3、 NFA到DFA转换的子集法及最小化 从正规式R构造NFA M的步骤1 1、把正规式R表示为: 从∑上的正规式R构造NFA M的步骤2 2、把R分裂并加进新的结点 结点分裂规则① 结点分裂规则② 结点分裂规则③ 子集法的基本思想 NFA 子集法 设已给具有ε动作的NFA M=(K,∑,f,S0,Z) 递归描述步骤(1) (1)给出M′的初态 : 递归描述步骤(2) (2)对于K′中尚未标记的状态 qi ={Si1 ,Si2 ,…,Sim}, Sik ?K做 : 递归描述步骤(3) (3)重复(2)直到M′中不再有未标记的状态为止。 构造正规式b(ab|bb)*ab的DFA (1)NFA (2)DFA 3、对K′中未标记状态q1做: 4、对K′中未标记状态q2做: 5、对K′中未标记状态q3做: 6、对K′中未标记状态q4做: 7、对K′中未标记状态q5做: 等价的DFA M ′如下 K′={ q0 , q1 , q2 ,q3 , q4 ,q5} NFA M转换为DFA M ′的过程 DFA M ′的状态图 最小化 1、初始划分由两个子集组成,即: 2、考查子集{q0,q1,q2,q3,q5} 3、考查子集{q0,q1,q3,q5} 设字母表∑={a,b}上的正规式R=(a|ba)* 1、构造NFA M′ ,使得L(M′ )=L(R) ; 2、将NFA M′确定化,得到DFA M 使得L(M′ )=L(M); 3、将DFA M最小化。 构造NFA M′ 将NFA M′确定化 2、对K′中未标记状态q0做: move(q0,b)= 等价的DFA M 如下 NFA M ′转换为DFA M 的过程 DFA M 的状态图 将DFA M最小化 1、初始划分由两个子集组成,即: 第四章 自顶向下的语法分析 (1)消除直接左递归 (2)消除间接左递归的算法 (3)First集合和Follow集合的求解方法 (4)避免回溯的判断方法 (5)简单回溯的消除方法 (6)LL(1)分析表的构造算法 (7)LL(1)分析方法 P78#4 P78#4(续) (2)不是LL(1)文法,文法中有直接左递归的规则: P78#4(续) (4)构造LL(1)分析表 对文法G[S]: S → a| ∧|(T) T → T,S|S (1)给出(a,(a,a))的最左推导; (2)该文法是LL(1)文法吗?为什么? (3)改写成与之等价的LL(1)文法,构造LL(1)分析表。 (4)给出输入串(a,a)#的分析过程,并说明该串是否为G的句子。 (1)句子(a,(a,a))的最左推导: S ?(T) (T,S) ?(S,S) (a,S) ?(a,(T))
您可能关注的文档
最近下载
- 新22S6消防工程参考标准.docx
- 慢性肾脏病早期筛查、诊断及防治指南(2022年版).pptx VIP
- 家庭饮食健康计划.pptx VIP
- 2025年福建省厦门集美中学招聘办公室职员1人笔试备考题库及答案解析.docx VIP
- 级配碎石施工 ..ppt VIP
- 2022年7月上海高考英语真题(学生版+解析版+听力音频).docx
- DB44T 1212-2013 用能单位能源计量管理体系通用要求.pdf VIP
- 上-下气道慢性炎症性疾病联合诊疗与管理专家共识中华医学会呼吸病学分会哮喘学组(发布时间:2017-07).pdf VIP
- 心力衰竭诊疗规范.docx VIP
- 光照时间对三斑海马幼苗成活率和生长速度的影响.pdf VIP
文档评论(0)