程序设计语言编译原理(第三版)第4章.pptVIP

  • 2
  • 0
  • 约8.36千字
  • 约 53页
  • 2017-07-05 发布于四川
  • 举报

程序设计语言编译原理(第三版)第4章.ppt

一、预测分析程序工作过程 1.总控程序算法描述 2.分析过程举例 §4.5 预测分析程序 (1)初始化:依次把’#’和文法开始符号压入分析栈, 将输入串第一个符号读入a; §4.5 预测分析程序 1.总控程序算法描述 (2)若X∈VT ①X=a≠”#”, 则将X从分析栈顶退掉, a指向下一个输入字符; (3)若X∈VN , 则查分析表. 此时对M[X,a]: ②X=a=”#”, 表示分析成功,停止分析过程; ③X≠a ,表示不匹配的出错情况. ①若M[A, a]={ X→X1X2…X k },则 将X从栈中弹出并将Xk,Xk-1,…,X1一一推进栈; ②若M[A, a]中为空白,则表示出错,可调用语法出错处理子程序. 下面用预测分析方法对输入串i+i*i# 进行分析,给出栈的变化过程如下: 步骤 分析栈 剩余输入串 所用产生式 2 #E?T i+i*i# E?TE? T?FT ? 1 #E i+i*i# 2.分析过程举例 §4.5 预测分析程序 3 #E?T?F i+i*i# 4 #E?T?i i+i*i# 5 #E?T? +i*i# 6 #E? +i*i# F?i i匹配 T??ε E??+TE? 步骤 分析栈 剩余输入串 所用产生式

文档评论(0)

1亿VIP精品文档

相关文档