实验二编写语法分析程序.docVIP

  • 148
  • 0
  • 约3.1千字
  • 约 4页
  • 2017-08-15 发布于重庆
  • 举报
实验二编写语法分析程序.doc

实验二 编写语法分析程序 2.1 实验类型 设计型实验,6学时(2学时完成文法改造; 2学时完成程序编码;2学时完成程序测试) 2.2 实验目的 通过设计、编、调试一个递归下降语法分析程序,实现对词法分析程序所提供的单词序列进行语法检查和结构分析,掌握语法分析方法。 若有A→α1|α2|…|αn ,则 FIRST (ai)∩ FIRST (aj) = φ (i ≠ j,1≤i,j≤n) (3)文法的任何一个非终结符A, 若有A→α1|α2|…|αn且存在ai ,有 ε∈FIRST (αi),则 FIRST (αj)∩ FOLLOW (A) = φ ( i ≠ j, j=1,2,. . .,n ) 2.3.3 文法改造 1、消除直接左递归(将左递归改为右递归): 直接左递归形式:U→Ux|y;其中:x,y∈(VN∪VT)* ,y不以U打头。 直接左递归的消除: U→yU’ U’→xU’|ε 直接左递归的一般形式:U→Ux1|Ux2|…|Uxm|y1|y2|…|yn;其中:xi≠ε ,yi都不以U打头。 一般形式直接左递归的消除: U→y1U’| y2U’ |…| ynU’ U’→x1U’| x2U’| …| xmU’|ε 2、消除间接左递归: 要求无环路(形如A?+ A的推导)和无ε-产生式。 (1)把非终结符按某

文档评论(0)

1亿VIP精品文档

相关文档