编译原理ppt3_5.pptVIP

  • 1
  • 0
  • 约5.18千字
  • 约 32页
  • 2017-07-10 发布于河南
  • 举报
编译原理ppt3_5

3.5 LR分析器 LR(k):L表示从左至右扫描输入串,R表示构造一个最右推导的逆过程,k指的是在决定语法分析动作时需要向前看的符号个数。 LR分析法的缺点:手工实现工作量大 构造LR分析表的方法 简单LR方法(SLR) 规范的LR方法 向前搜索的LR文法(LALR) 描述能力:规范LRLALRSLR 实现代价:规范LRLALRSLR 3.5.1 LR分析算法 语法分析表 分析表构成:动作表(action)和转向表(goto) 注:Si表示状态, ai表示终结符,Ai表示非终结符。 action[s,a]规定了状态s面临输入符号a时应该采取什么动作: 移进:把(s,a)的下一状态s=goto[s,a]和输入符号a推进栈,下一输入符号变成现行输入符号; 归约:指用某一产生式A→β进行归约。 接受:宣布分析成功,停止分析器的工作; 报错:报告发现错误,调用出错处理程序—扫描输入串就可以发现错误位置。 goto[s,X]则指出状态s面对文法符号X(终结符或非终结符)时下一状态是什么。 goto[s,X]:若X ?VT ,表示在当前状态下,读入X应转向什么状态;若X ? VN ,表示当前栈顶句柄归约成X后,应转向什么状态。 ( so X1 s1 ... Xm sm, ai ai+1 ... an $ ) 分析器根据action(sm , ai)确定下一步动作

文档评论(0)

1亿VIP精品文档

相关文档