zoukankan      html  css  js  c++  java
  • 编译原理 作业六

    1.分别写出描述以下语言的正规文法和正规式:

    L1={abna|n≥0}。                G(X)-> A|XB    ab*A

    L2={ambn|n≥1,m ≥1}               G(X)-> AAX|BBX  aa*bb*

    L2={(ab)n|n≥1}                G(X)-> AXB|AB   ab(ab)*

     2.将以下正规文法转换到正规式

    Z→0A                    解:A=0A+0B  ->  A=0A+0(1A+ε)     ->       a=(0+01)                             ->  A=(0+01)*0  -> Z = 0A=0(0+01)*0=0(0|01)*0

    A→0A|0B                            =0A+01A+0      b=0
    B→1A|ε                            =(0+01)A+0      A=aA+b

                                                aA+b=aA|B 

                                                G(A)-> aA|b

                                              A=a*b

                                    

    Z→U0|V1             解: Z=U0+V1    ->      Z=(Z1+1)+(Z0+0)   ->  a=1+0   ->  Z=(0+1)*(0+1)
    U→Z1|1                  U=Z1+1     =Z1+Z0+1+0    Z=Za+a

    V→Z0|0                  V=Z0+0     =Z(1+0)+1+0    Z->aZ|a

                                            Z=a*a

    S→aA              解:S=aA      ->A=bA+aaA+b  ->S=a(b+aa)*b
    A→bA|aB|b              A=bA+aB+b     =(b+aa)A+b     =a(b|aa)*b
    B→aA                B=aA         =(b+aa)*b

    I→I|Il|Id             解:l=l+ll+ld=l+l(l+d)  ->   l=l(l|d)*

     
     
  • 相关阅读:
    javaIO流之 字节与字符流认识
    Servlet容器理解(生命周期、servletContext作用域、servlet装载方式)
    是否改变原数组的常用方法
    时间空间复杂度的初步理解---后续补充
    java集合框架之 Set
    【原】SQLPLUS支持上下翻页
    【转】shell脚本写的俄罗斯方块游戏
    【原】Oracle 11.2.0.1 64bit for RHEL6.0 Server x86_64 静默安装
    【原】RHEL6.0企业版安装
    【原】记录一句话
  • 原文地址:https://www.cnblogs.com/zzkai/p/11676554.html
Copyright © 2011-2022 走看看