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#’的"移进-归约"分析过程:

    符号栈 输入符号串 动作
    # 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)。

    已知文法G[S]为:

    S -> a | ^ | (T)

    T -> T, S | S

    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,

      a ^ ( ) , #
    a       > > >
    ^       > > >
    ( < < < = <  
    )       > > >
    , < < < > >  
    # < < <     =
  • 相关阅读:
    根据当前日期转目的国地区时间戳
    时间戳转换作用域问题
    字符串拼接问题
    input全选和取消全选
    循环遍历渲染模块
    jQuery实现获取选中复选框的值
    React组件
    underscore.js依赖库函数分析二(查找)
    underscore.js依赖库函数分析一(遍历)
    React入门
  • 原文地址:https://www.cnblogs.com/xiaolan-Lin/p/11975667.html
Copyright © 2011-2022 走看看