zoukankan      html  css  js  c++  java
  • 第十四次:算符优先分析

    1. 已知算符优先关系矩阵如下表:

     

    +

    *

    i

    (

    )

    #

    +

    >

    <

    <

    <

    >

    >

    *

    >

    >

    <

    <

    >

    >

    i

    >

    >

       

    >

    >

    (

    <

    <

    <

    <

    =

     

    )

    >

    >

       

    >

    >

    #

    <

    <

    <

    <

     

    =

     写出符号串(i+i)*i#的算符优先分析过程。

    栈  关系 输入串 动作
    #  < (i+i)*i# 移进
    #( < i+i)*i# 移进
    #(i > +i)*i# 归约
    #(N < +i)*i#  移进
    #(N+ i)*i# 移进
    #(N+i > )*i# 归约
    #(N+N )*i#  归约 
     #(N )*i#  移进
     #(N) *i#  归约 
     #N *i#  移进 
     #N* i#  移进 
     #N*i 归约 
    #N*N  归约 
     #N   # 接受 

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

    1)计算FIRSTVT和 LASTVT。

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

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

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

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

    2)找三种关系对。

    = :(T) 、#S#

    < :#S 、,S 、(T

    > :S# 、T) 、T,

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

    4)是否算符优先文法?

    答:是。

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

    关系 输入串  动作
    # < (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   # 接受

    3.写出a+b*(c-d)+e/(c-d)↑n 的逆波兰表达式,三元式,四元式。

     答:

    逆波兰表达式:(1) abcd-*+ecd-n↑/+

    三元式:

                (1)(- c,d)

        (2)(* b,(1))

        (3)(+ a,(2))

        (4)(↑ (1),n)

        (5)(/ e,(4))

        (6)(+ (3),(5))

    四元式:

                (1)(- c,d,t1)

        (2)(* b,t1,t2)

        (3)(+ a,t2,t3)

        (4)(↑ t1,n,t4)

        (5)(/ e,t4,t5)

        (6)(+ t3,t5)

  • 相关阅读:
    Linux 进程退出后自动启动
    Python UDP broadcast PermissionError: [Errno 13] Permission denied
    C# 获取MAC地址
    C# 多线程
    C# UdpClient 设置超时时间
    C# 控件聚焦
    C# 添加图片资源
    C# Listview 第一列不能居中
    Ubuntu 14.04 AM335x TI-RTOS 编译
    为AM335x移植Linux内核主线代码
  • 原文地址:https://www.cnblogs.com/zxf001/p/12021349.html
Copyright © 2011-2022 走看看