首页 > 代码库 > 编译原理语言的分类

编译原理语言的分类

  • 从推导式的左边到右边成为推导,从右边到左边成为规约
  • LL的分析是一个不断向右扩展的过程,类似一个循环,适合EBNF描述。因此LL是对语法树的一个前序遍历,它是从上到下的,从根节点的起始非终结符一直到叶子节点的终结符
  • LR的shift-reduce过程则是一个递推-回归的过程,SR总是从终结符开始,将终结符规约为推导式左边的非终结符。这是一个对语法树的后序遍历,它是从低到顶的,即从终结符的叶子节点到起始非终结符的根节点。因此用递归的BNF描述更加合适。由于左规约等同于右推导,因此称为LR
  • Regular Language:

    技术分享技术分享
     
  • chomsky norm form  Context-Free
               技术分享

 

  • Context-sensitive Grammar:
技术分享
 

编译原理语言的分类