编译原理-陈意云-课后答案3市公开课一等奖省赛课微课金奖课件_第1页
编译原理-陈意云-课后答案3市公开课一等奖省赛课微课金奖课件_第2页
编译原理-陈意云-课后答案3市公开课一等奖省赛课微课金奖课件_第3页
编译原理-陈意云-课后答案3市公开课一等奖省赛课微课金奖课件_第4页
编译原理-陈意云-课后答案3市公开课一等奖省赛课微课金奖课件_第5页
已阅读5页,还剩19页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

编译原理习题课(3)栾俊luanj@8/18/20248/18/20241luanj@第1页3.8(a)(a)消除3.1左递归

(b)在(a)基础上结构LL(1)分析表8/18/20242luanj@第2页3.8(a)(续)S->(L)|a

L->L,S|S只有直接左递归

S->(L)|a

L->SL’

L’->,SL’|ε8/18/20243luanj@第3页3.8(b)(续)S->(L)|a

L->SL’

L’->,SL’|εFIRST(S)={(,a}

FIRST(L)=FIRST(S)={(,a}

FIRST(L’)={,,ε}FOLLOW(S)=(FIRST(L’)-{ε})+FOLLOW(L)+FOLLOW(L’)+{$}={,,),$}

FOLLOW(L)={)}

FOLLOW(L’)=FOLLOW(L)={),$}8/18/20244luanj@第4页3.8(b)(续)(),a$SS->(L)S->aLL->SL’L->SL’L’L’->εL’->,SL’L’->ε8/18/20245luanj@第5页3.16给出接收文法

S->(L)|a

L->L,S|S

LR(0)活前缀DFA;而且在此基础上结构SLR(1)分析表.8/18/20246luanj@第6页3.16(续)拓展文法:

(1)S‘->S

(2)S->(L)

(3)S->a

(4)L->L,S

(5)L->S初态:I0=closure{S’->∙S}=

I0S’->∙SS->∙(L)S->∙a8/18/20247luanj@第7页3.16(续)Goto(I0,S)=Goto(I0,()=

Goto(I0,a)=I1S’->S∙I3S->a∙I2S->(∙L)L->∙L,S

L->∙SS->∙(L)S->∙a8/18/20248luanj@第8页3.16(续)Goto(I2,L)=

Goto(I2,S)=Goto(I2,()=I2Goto(I2,a)=I3I4S->(L∙)L->L∙,SI5L->S∙

8/18/20249luanj@第9页3.16(续)Goto(I4,))=

Goto(I4,,)=

I7L->L,∙SS->∙(L)S->∙aI6S->(L)∙8/18/202410luanj@第10页3.16(续)Goto(I6,

S)=Goto(I6,

()=I2Goto(I6,

a)=I3I8L->L,S∙8/18/202411luanj@第11页3.16(续)I8L->L,S∙I0S’->∙SS->∙(L)S->∙aI1S’->S∙I2S->(∙L)L->∙L,S

L->∙SS->∙(L)S->∙aI3S->a∙I4S->(L∙)L->L∙,SI6S->(L)∙S(aLSa((,I7L->L,∙SS->∙(L)S->∙aS(aI5L->S∙

8/18/202412luanj@第12页3.16(续)SLR(1)分析表结构

1)若A∙a∈I,且goto(I,a)=J,则action[I,a]=sJ

2)若A∙

∈I,则action[I,b]=rA,b∈Follow(A)

3)若S‘S∙

∈I,则action[I,$]=acc

4)若goto(I,B)=K,则GOTO[I,B]=K 5)其它为空白/error8/18/202413luanj@第13页3.16(续)状态actiongoto()a,$SL0s2s311s2s3acc2143r3r3r34s5s65r5r56r2r2r27s2s378r4r48/18/202414luanj@第14页3.16(续)S->(L)|a

L->L,S|S

FOLLOW(S)={$}+FOLLOW(L)={$,),,}

FOLLOW(L)={),,}8/18/202415luanj@第15页3.23证实下面文法不是SLR(1)文法

S->X

X->Ma|bMc|dc|bda

M->d8/18/202416luanj@第16页3.23(续) S->X

X->Ma|bMc|dc|bda

M->d存在移进-规约冲突

如句子dc,当d进栈后,面临c,此时项目[X->d∙c]要求移进,而c在FOLLOW(M)中,所以项目[M->d∙]要求规约8/18/202417luanj@第17页3.26一个非LR(1)文法以下:

L->MLb|a

M->ε

给出全部有移进-规约冲突规范LR(1)项目集8/18/202418luanj@第18页3.26(续)拓广文法:

L’->L

L->MLb|a

M->εI0

I0L’->∙L,$L->

∙MLb,$L->∙a,$M->

∙,$/a8/18/202419luanj@第19页3.26(续)I0L’->∙L,$L->

∙MLb,$L->∙a,$M->

∙,aI1

L’->L∙,$LI2L->

M∙Lb,$L->

∙MLb,bL->∙a,bM->∙,aMI3

L->a∙,$aI4L->

ML∙b,$LI5L->

M∙Lb,bL->

∙MLb,bL->∙a,bM->∙,aMI6L->a∙,baI7L->

MLb∙,$bI8L->

ML∙b,baLMI9L->

MLb∙,bb8/18/202420luanj@第20页3.26(续)I0,I2,I5面临a时存在移进-规约冲突8/18/202421luanj@第21页3.30下面哪个不是LR(1)文法?对非LR(1)文法给出全部冲突LR(1)项目集S->aAc

A->Abb|bS->aAc

A->bAb|b8/18/202422luanj@第22页3.30(续)第二个不是LR(1)文法

第二个文法在句子正中心按A->b规约,而只向后看一位是无法判断是否抵达句子中心位置存在冲突项目集:S->a∙Ac,$A->∙bAb,cA->∙b,cA->b∙Ab,cA->∙bAb,bA->∙b

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论