zoukankan      html  css  js  c++  java
  • 9.18语法树,短语,直接短语,句柄

    1.已知文法:

    S->a|^|(T)

    T->T,S|S

    分析句型(T,(^,a)),求全部的短语、直接短语和句柄。

     答:该句型的最左推导为:

          S => (T) => (T , S) => (T , (T)) => (T , (T , S)) => (T , (S , S)) =>(T , (^ , S) => (T , (^ , a))

     该句型的语法树为:

         

    由语法树可得:

    短语:^  a  ^,a   ( ^ , a)  ( T , ( ^ , a ) )  (( T , ( ^ , a ) ))

    直接短语:^  a

    句柄:^

    2.构造上下文无关文法,描述语言:

    anbn|n>=0

    ambn|m>=n>=0

    (ab)n|n>=0}

    ambn|m,n>=1}

     

    答:

    anbn|n>=0}

        G[S] => aSb | ab | ε

    ambn|m>=n>=0}

        G[S] => aSb | a | ab | ε

    (ab)n|n>=0}

        G[S]  => (ab)S | (ab) | ε

    ambn|m,n>=1}

        G[S] => aSb | aS |Sb| ab

     

    3.如果if语句的方法:

    句子if E1 then if E2 then S1 else S2是否有两棵不同的语法树?说明了什么?

    答:有两颗不同的语法树,说明了该语法有二义性。

     

     

     

  • 相关阅读:
    简单函数调用分析
    从函数层面看栈溢出
    C语言漏洞基础(一)
    C语言函数篇(一)
    开发一种填表机器
    阿米洛varmilo键盘
    Flops
    助力高校计算机教育 —— 码云为老师推出免费高校版
    Numerical Methods LetThereBeMath
    Git Cookbook
  • 原文地址:https://www.cnblogs.com/Azan1999/p/11545349.html
Copyright © 2011-2022 走看看