zoukankan      html  css  js  c++  java
  • 编译原理:自下而上语法分析

    1.已知文法

    E→E+T | T

    T→T*F | F

    F→(E) | i

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

    解析:

      语法树如图所示:

      

       分析过程如下:

        

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

    1)计算FIRSTVT和 LASTVT。

    2)找三种关系对。

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

    文法:

    S->a | ^ | (T)

    T->T,S | S

     (1)                                                                    

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

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

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

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

    (2)

    符号对 =

          (T)

          #S#

    符号对 <

          #S

          (T

          ,S

    符号对 >

          S#

      T) 

          T,

    (3)

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

    符号对:

    #S

    ,S

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

    符号对:

    (T

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

    符号对:

    S#

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

    T) 

    T,

     

     

    a

    ^

    (

    )

    ,

    #

    a

     

     

     

     >

    ^

     

     

     

     >

    (

    =

     

    )

     

     

     

     >

    ,

     

    #

     

     

    =

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    高性能网站优化-确保异步加载脚本时保持执行顺序
    sublime安装和汉化
    解决IE6下a标签的onclick事件里的超链接不跳转问题
    C++大数据处理
    HDRtools-OpenExr
    Effective C++学习进阶版
    我的算法学习之路
    一个应届计算机毕业生的2012求职之路
    存储器管理
    程序员的自我修养——操作系统篇
  • 原文地址:https://www.cnblogs.com/zhif97/p/11981975.html
Copyright © 2011-2022 走看看