第5章语法-自底向上的语法范例.ppt

§5.4 LR(0)分析器 5.4.4 LR(0)分析表的构造 假设已经构造出LR(0)的项目集规范族:C={C0,C1,…,Cn},其中Ci为项目集的名字,对应状态为i,假设S→.δ是文法开始符号所在的规则,令包含项目S→.δ的项目集Ck对应的状态k为开始状态。 (1)若项目 ,且GO[Ci,a]=Cj,其中a为终结符号,置ACTION[i,a]=“把状态j和符号a移近栈”,记Sj; (2)若项目 ,则对于任何输入符号a,a为终结符或#,置ACTION[i,a]=“用产生式A→ α进行归约”,记为Rj; §5.4 LR(0)分析器 5.4.4 LR(0)分析表的构造 (3)若项目S→δ.∈Ci,置ACTION[i,#]=“接受”,记为“ACCEPT”。 (4)若GO[i,A]=Cj,A为非终结符,则置GOTO[i,A]=j。 (5)分析表中凡不能用(1) ~(4)填入信息的单元为空或均置为ERROR,表示有错。 §5.4 LR(0)分析器 5.4.4 LR(0)分析表的构造 (0)S→A (1)A→(A) (2)A→a S2 S3 1 ACCEPT S2 S3 4 R2 R2 R2 R2 R1 R1 R1 R1 S5 §5.4 LR(0)分析器 5.4.5 LR(0)分析器的工作过程 (1)若

文档评论(0)

1亿VIP精品文档

相关文档