2014小型编译的构造.pptVIP

  • 2
  • 0
  • 约 61页
  • 2017-06-13 发布于湖北
  • 举报
* * * * * * * * 最终改造后的文法为: P →{DS} D →int ID ;{int ID;} S→if (B) then S [else S ] | while (B) do S | { L } | ID=E L→SL’ L’ →; L | ? B→T’ {∨T’} T’ →F’ {∧ F’ } F’ →ID relop ID | ID E→T{+T| -T} T→F{* F | /F } F→ (E) | NUM | ID 注意:红颜色的{}是终极符.    黑颜色的{}和[]不是终极符.     * 自顶向下语法分析 5. 递归子程序语法分析方法 递归子程序法,又称递归下降分析法。思想是:非终极 符的文法规则可看成是识别该非终极符的过程定义,针对文 法的每一非终极符,根据相应产生式各候选式的结构,为其 编写一个递归函数,用来识别该非终极符所表示的语法范畴。 递归下降分析法是一种确定的自顶向下的语法分析方法,其分析过程是从文法开始符号出发,执行一组递归过程,不断向下推导,直到推出句子。 * 自顶向下语法分析 为了构造递归子程序,有如下的约定和要注意的问题: (1)文法必须是LL(1)文法。 (2)待匹配符号串是要被分析的源程序,是用助记符或整数码表示的单词类别串。 例如待匹配

文档评论(0)

1亿VIP精品文档

相关文档