第五章 自下而上语法分析-lr.pptVIP

  • 3
  • 0
  • 约8.05千字
  • 约 49页
  • 2019-08-28 发布于湖北
  • 举报
LR(0)分析表的构造 设文法G’的项目集规范族C={I0,I1,…,In},令其中每个项目集的下标作为分析器的状态,令包含项目[S’ → .S]的项目集Ik的下标k为分析器的初态。则构造LR(0)分析表的步骤如下: ①若项目A→α.aβ∈ Ii且GO(Ii,a)=Ij,其中a为终结符,置ACTION[i,a]=“把状态j和符号a移进栈”,简记为“sj”; ②若项目A→α.∈ Ii ,则对于任何输入符a或结束符#,置ACTION[i,a]=“用产生式A→α进行归约”,简记为“rj”(假定A→α是文法G’的第j条产生式); ③若项目S’→S.∈ Ii ,则置ACTION[i,#]=“接收”,简记为‘accept’; ④若GO(Ii,A)=Ij,A 为非终结符,则置GOTO(i,A)=j ⑤分析表中凡不能用规则①- ④添入信息的元素均置上ERROR。 状态 ACTION GOTO ( ) a # A 0 S2 S3 1 1 ACCEPT 2 S2 S3 4 3 R2 R2 R2 R2 4 S5 5 R1 R1 R1 R1 构造LR(0)分析表的步骤小结 文法拓广; 利用CLOSURE和GO函数,求出C; 构造识别活前缀的DFA; 由算法构造LR(0)分析表 举例 构造下列文法的LR(0)分析表 S→A|B A →aAb|c B →aBb|d LR(0)分析法面临的问题 只有L

文档评论(0)

1亿VIP精品文档

相关文档