• 算符优先分析


    1.接上个作业(P121练习1),完成4),5)两个步骤。

    1)计算FIRSTVT和 LASTVT。

    2)找三种关系对。

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

    4)是否算符优先文法?

    5)给出输入串(a,(a,a))#的算符优先分析过程。

    4)

     

    +

    *

    i

    (

    )

    #

    +

    >

    <

    <

    <

    >

    >

    *

    >

    >

    <

    <

    >

    >

    i

    >

    >

       

    >

    >

    (

    <

    <

    <

    <

    =

     

    )

    >

    >

       

    >

    >

    #

    <

    <

    <

    <

     

    =

    5)

    关系

    输入符号串

    动作

    #

    (a,(a,a))#

    移进

    #(

    a,(a,a))#

    移进

    #(a

    ,(a,a))#

    归约

    #(N

    ,(a,a))#

    移进

    #(N,

    (a,a))#

    移进

    #(N,(

    a,a))#

    移进

    #(N,(a

    ,a))#

    归约

    #(N,(N

    ,a))#

    移进

    #(N,(N,

    a))#

    移进

    #(N,(N,a

    ))#

    归约

    #(N,(N,N

    ))#

    归约

    #(N,(N

    =

    ))#

    移进

    #(N,(N)

    )#

    归约

    #(N,N

    )#

    归约

    #(N

    =

    )#

    移进

    #(N)

    #

    归约

    #N

    #

    接受

    2.尝试编写自下而上的语法分析程序。

    可以只写表达式部分。

    3.给出下面语句的三元式、四元式和逆波兰式。

    a*b+(c-d)/e 

     得出:

    三元式:

    (1) (*,a,b)

    (2) (- , c ,d)

    (3) (/ ,e,(2))

    (4) (+,(1),(3))

    四元式:

    (1) t1:=a*b

    (2) t2:=(c-d)

    (3) t3:= t2/e

    (4) t4:=t1+t3

    逆波兰式:

    a*b+(c-d)/e ->cd-e/ab*+

  • 相关阅读:
    C
    C
    你好,欢迎到这里来
    数组专题
    web前端的性能优化
    MornUI 源码阅读笔记
    application tips
    [转]就这样,创建了自己的运行时共享库(RSL)
    [转]glew, glee与 gl glu glut glx glext的区别和关系
    编码相关了解
  • 原文地址:https://www.cnblogs.com/av10492/p/12031849.html
Copyright © 2020-2023  润新知