zoukankan      html  css  js  c++  java
  • 自下而上语法分析

    1.已知文法:

    E→E+T | T

    T→T*F | F

    F→(E) | i

    以句柄作为可归约串,写出符号串‘i+i*i#’的"移进-归约"分析过程。

     

    符号栈

    输入串

    动作

    #

    i+i*i#

    移进

    #i

    +i*i#

    归约

    #F

    +i*i#

    归约

    #T

    +i*i#

    归约

    #E

    +i*i#

    移进

    #E+

    i*i#

    移进

    #E+i

    *i#

    归约

    #E+F

    *i#

    归约

    #E+T

    *i#

    移进

    #E+T*

    i#

    移进

    #E+T*i

    #

    归约

    #E+T*F

    #

    归约

    #E+T

    #

    归约

    #E

    #

    接受/语法错误

    2.P121练习1的(1)(2)。

    1)计算FIRSTVT和 LASTVT。

         FIRSTVT( S )={ a , ∧ , ( }

         FIRSTVT( T )={ ,,  a , ∧ , ( }

         LASTVT( S )={ a , ∧ , ) }

         LASTVT( T )={ ,,  a , ∧ , ) }

     

    2)找三种关系对。

         =  : ( T )  

           # S #

         <  : ( T

         ,S

          # S

         >  : T ) 

          T,

          S #

     

    3)构造算符优先关系表。

     

    a

    #

    a

     

     

     

     

     

     

     

    =

     

     

     

     

    #

     

     

    =

     

  • 相关阅读:
    模板合集
    1201: 众数问题
    112. 路径总和
    Hibernate的配置及CURD
    5. 最长回文子串
    1120: 最值交换
    1119: 一维数组排序
    1118: 数列有序
    1117: 查找数组元素
    1116: 删除元素
  • 原文地址:https://www.cnblogs.com/lywkkk/p/11981648.html
Copyright © 2011-2022 走看看