复习—编译原理第4章.ppt

复习—编译原理第4章

* 编译原理 * 2 GO函数 令I是一个项目集,X是一个文法符号,函数GO(I,X)定义为: GO(I,X)=CLOSURE(J),其中 J={任何形如(A??X??,a)的项目|(A???X?,a)?I} 注:在执行转换函数GO时,搜索符并不改变。 二、构造LR(1)项目集规范族 * 编译原理 * 例:LR(1)项目集及规范族的构造 G(S′): (0) S′?S (1) S ?CC (2) C ?cC (3) C ?d 若[A ?? ? ??,a] ?I 且B ?? ? P 则[B? ? ?,b] ?I 其中b ?FIRST(?a) I0 [S′??S, #] [S ? ? CC,#] [C ? ? cC,c/d] [C ? ? d,c/d] * 编译原理 * 三、构造LR(1)分析表 设C={I0,I1,…In},以各项目集Ik(k=0,…,n)的下标k为分析表中的状态,并以包含(S`??S,#)的项目的状态为分析表初态。按下列步骤填写ACTION表和GOTO表: 1、若项目(A???a?,b)属于Ik,且GO(Ik,a)= Ij,a为终结符,则置ACTION[k,a]=Sj ; 2、若项目(A???,a) ?Ik,则置ACTION[k,

文档评论(0)

1亿VIP精品文档

相关文档