- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理A
简要说明语义分析的基本功能。2. 考虑文法 G[S]:
S → (T) | a+S | a
T → T,S | S
消除文法的左递归及提取公共左因子。
试为表达式 w+(a+b)*(c+d/(e-10)+8) 写出相应的逆波兰表示。4. 按照三种基本控制结构文法将下面的语句翻译成四元式序列:
while (AC BD)
{
if (A ≥ 1) C=C+1;
else while (A ≤ D)
A=A+2;
}。5. 已知文法 G[S] 为 S → aSb|Sb|b ,试证明文法 G[S] 为二义文法。语义分析的基本功能包括: 确定类型、类型检查、语义处理和某些静态语义检 查。消除文法G[S]的左递归: S→(T) | a+S | a T→ST′ T′→,ST′| ε 提取公共左因子: S→(T) | aS′ S′→+S | ε T→ST′ T′→,ST′| εw a b + c d e 10 - / + 8 + * +
4答:该语句的四元式序列如下(其中E1、E2和E3分别对应A<CB<D、A≥1和A≤D,并且关系运算符优先级高): 100 (j,A,C,102) 101 (j,_,_,113) 102 (j,B,D,104) 103 (j,_,_,113) 104 (j=,A,1,106) 105 (j,_,_,108) 106 (+, C, 1, C) 107 (j,_,_,112) 108 (j≤,A,D,110) 109 (j,_,_,112) 110 (+, A, 2, A) 111 (j,_,_,108) 112 (j,_,_,100) 113
5答:证明: 由文法G[S]:S→aSb|Sb|b,对句子aabbbb对应的两棵语法树为: 因此,文法G[S]为二义文法。 什么是句子? 什么是语言 ?2. 写一文法,使其语言是偶正整数的集合,要求:
???(1)允许0打头;
???(2) 不允许0打头。3. 已知文法 G[E] 为: ????E→T|E+T|E-T ????T→F|T*F|T/F ????F→ ( E ) |i 该文法的开始符号(识别符号)是什么? 请给出该文法的终结符号集合 VT 和非终结符号集合 VN 。 找出句型 T+T*F+i 的所有短语、简单短语和句柄4. 构造正规式相应的 NFA : 1(0|1)*1015. 写出表达式(a+b*c)/(a+b)-d的逆波兰表示和三元式序列。答:(1)设G是一个给定的文法,S是文法的开始符号,如果S x(其中xVT*),则称x是文法的一个句子。 (2)设G[S]是给定文法,则由文法G所定义的语言L(G)可描述为: L(G)={x│S x,xVT*} 。解:(1)G[S]=({S,P,D,N},{0,1,2,…,9},P,S) P: S-PD|D P-NP|N D-0|2|4|6|8 N-0|1|2|3|4|5|6|7|8|9 (2)G[S]=({S,P,R,D,N,Q },{0,1,2,…,9},P,S) P: S-PD|P0|D P-NR|N R-QR|Q D-2|4|6|8 N-1|2|3|4|5|6|7|8|9 Q-0|1|2|3|4|5|6|7|8|9
3解: 该文法的开始符号(识别符号)是E。 该文法的终结符号集合VT={+、-、*、/、(、)、i}。 非终结符号集合VN={E、T、F}。 句型T+T*F+I的短语为i、T*F、第一个T、T+T*F+i; 简单短语为i、T*F、第一个T;句柄为第一个T。解1(0|1)*101对应的NFA为
5解:逆波兰表示: abc*+ab+/d- 三元式序列: (*,b,c) (+,a,) (+,a,b) (/,,) (-,,d)
(1) else 没有匹配的if
(2) 数组下标越界
(3) 使用的函数没有定义
(4) 在数中出现非数字字符
(5)函数调用时实参与形参类型不一致。
2.(15分) 构造一个DFA,它接收Σ={0,1}上所有满足如下条件的字符串:每个1 都有0 直接跟在右边。并给出该语言的正规式
3.(10分) 为下面的语言设计文法:
{ambn, 其中m ? n }
{w | w?{a, b}*,w的长度为奇数}
证明 E + T*(id)是文法的一个句型,指出该句型的所有短语、直接短语和句柄。
5.(15分) 给定文法:
E → E + T | E - T |T
T → T * F | T / F |F
F → (E) | id
C卷答案
1答案:(
您可能关注的文档
最近下载
- 小区挡土墙监测的方案.doc
- 组织安全绩效提升与重大事故预防HOP.pdf VIP
- 2021版35kV~750kV 变电站通用设备技术规范第13部分:接地变压器及消弧线圈成套装置.pdf VIP
- 心脏横纹肌瘤的科普知识课件.pptx VIP
- 2021版35kV~750kV 变电站通用设备技术要求及接口规范第2部分:高压并联电抗器.pdf VIP
- 新概念英语二册Mp3教程附音频下载-英语听力_0.pdf VIP
- 2021版35kV~750kV 变电站通用设备技术规范第9部分:低压并联电抗器.pdf VIP
- 2021版35kV~750kV 变电站通用设备技术规范第第12部分:站用变压器.pdf VIP
- 初一有理数计算700题.docx VIP
- 市政供热管网施工技术的方案.doc
文档评论(0)