文法

文法

基本概念

  • 符号:字母、数字、标点…
  • 字母表∑:一个有穷符号集合*(比如ASCII码就是一个字母表)*
    • 字母表的乘积
      • 12 = { ab | a∈∑1,b∈∑2}
    • 字母表的n次幂
      • 0 = ∅
      • Σn = Σn-1 * Σ,n > 1
    • 字母表Σ的正闭包
      • Σ+ = Σ ∪ Σ2 ∪ Σ3
      • 可以看做是len = 1、2、...n,的字符串集合
    • 字母表Σ的克林闭包
      • Σ* = Σ0∪Σ ∪ Σ2 ∪ Σ3
      • 可以看做是len = 0、1、2、...n,的字符串集合
  • 串(字符串): ∀x∈Σ*,x称为Σ是Σ上的一个字符串
    • 串是字母表中符号的一个有穷数列
    • 串s的长度记作|s|,指串中字符的个数
    • 用ε表示空串,|ε| = 0
    • 串的运算
      • 连接:若x、y是串,那么x和y的连接为xy或yx,xy中,x称为前缀,y为后缀
      • εs = sε = s

文法的形式定义

  • G = {VT, VN, P, S}

  • VT: 终结符集合
      文法所定义的语言的基本符号  token

  • VN: 非终结符结合
      表示语法成分的符号  语法变量

    • VT ∩ VN = ∅
    • VT ∪ VN = 文法符号集
  • P: 产生式

    • 一般形式:α→β,读作α定义为β
    • α∈(VN∪VT)+,且α中至少包含一个属于VN的元素:称为产生式的或者左部
    • β∈(VT∪VN):成为产生式的或者右部
    • 若有α→β1,α→β2…α→βn,即这些产生式中拥有相同的头部,则可以简写成α→β12|…|βn,β1、β2…βn称为α的候选式,| 读作’或’
  • S: 开始符号

    • 表示该文法中最大的语法成分,是特殊的非终结符
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值