编译原理试题及答案——加强版 .pdfVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

编译原理试题及答案

高级版

一、对于文法G[S]:

S→1A|0B|εA→0S|1AAB→1S|0BB

⑴(3分)请写出三个关于G[S]的句子;

⑵(4分)符号串11A0S是否为G[S]的句型?试证明你的

结论。

⑶(3分)试画出001B关于G[S]的语法树。

二、请构造一个文法,使其产生这样的表达式E:表达式中只含有

双目运算符+、*,且+的优先级高于*,+采用右结合,*采

用左结合,运算对象只有标识符i,可以用括号改变运算符优先级。

要求给出该文法的形式化描述。

三、设有语言L={α|α∈{0,1}+,且α不以0开头,但以00

结尾}。

⑴试写出描述L的正规表达式;

⑵构造识别L的DFA(要求给出详细过程,并画出构造过程中

的NDFA、DFA的状态转换图,以及DFA的形式化描述)。

四、给定文法G[S]:

S→AB

A→aB|bS|c

B→AS|d

⑴(6分)请给出每一个产生式右部的First集;

1

⑵(3分)请给出每一个非终结符号的Follow集;

⑶(8分)请构造该文法的LL(1)分析表;

⑷(8分)什么是LL(1)文法?该文法是LL(1)文法吗?为

什么?

五、给定文法G[S]:

S→SaA|a

A→AbS|b

⑴请构造该文法的以LR(0)项目集为状态的识别规范句型活前

缀的DFA。

⑵请构造该文法的LR(0)分析表。

⑶什么是LR(0)文法?该文法是LR(0)文法吗?为什么?

⑷什么是SLR(1)文法?该文法是SLR(1)文法吗?为什么?

六、给定下列语句:

ifa+bc

thenx:=a*(b-c)+(b*c-d)/e

⑴写出其等价的逆波兰表示;

⑵写出其等价的四元式序列。

七、已知下列C语言程序:

int*f()

{inta=100;returna;

}

main()

2

{int*i=f();

chara[]=“compiler”;printf(“theresultis%d\n”,

*i);

}

程序运行结果为:theresultis26157,

请解释为什么程序运行的结果不是期望的“theresultis

100”?

1.1三个0和1数量相等的串

1.2S=1A=11AA=11A0S

1.3

第二题构造文法如下:

G[E]=({+,*,(,),i},{E,F,T},P,E),其中P为:

E→E*F|FF→T+F|TT→(E)|i

第三题(1)正规表达式:1(0|1)*00

(2)第一步:将正规表达式转换为NDFA

3

第二步:将NDFA确定化为DFA:

造表法确定化(3分)确定化后DFAM的状态转换表(2分)

状态输入I0I1t01

[S]—[A,D,B]q0—q1

[A,D,B][D,B,C][D,B]重新命名q1

您可能关注的文档

文档评论(0)

. + 关注
官方认证
文档贡献者

专注于职业教育考试,学历提升。

版权声明书
用户编号:8032132030000054
认证主体 社旗县清显文具店
IP属地河南
统一社会信用代码/组织机构代码
92411327MA45REK87Q

1亿VIP精品文档

相关文档