编译原理学习笔记(二)

本文介绍了语言及其文法的基本概念,包括字母表、串的运算,并深入讲解了文法的定义,特别是上下文无关文法(CFG)的定义、产生式、分析树及其与语言的关系。此外,还探讨了语言的分类,如Chomsky文法分类体系中的0型、1型、2型和3型文法。
摘要由CSDN通过智能技术生成

第二章 语言及其文法

一、基本概念

1、字母表:字母表\sum是一个有穷符号集合

符号:字母、数字、标点符号、。。。例:二进制字母表{0,1},ASCII字符表、Unicode字符集

2、字母表上的运算

(1)字母表的乘积

 sigma1 sigma2的乘积:sigma1 sigma2 ={ab|a属于sigma1,b属于sigma2}

例:{0,1} {a,b}={0a,0b,1a,1b}

(2)字母表的幂运算:字母表的n次幂运算是常速为n的符号串构成的集合

sigma的0次幂:{ \varepsilon}【空串】

sigma的n次幂:{0,1}^3={0,1}{0,1}{0,1}={000,001,010,011,100,101,110,111}

(3)字母表的正闭包的运算:长度为正数的符号串构成的集合

sigma^+=sigma 并 sigma^2 并 sigma^3 并 ...

例:{a,b,c,d}^+={a,b,c,d,aa,ab,ac,ad,ba,bb,bc,bd,...,aaa,aab,aac,aad,aba,abb,aba,...}

(4)字母表的克林闭包:任意符号串(长度可以为零)构成的集合

sigma^*=sigma^0 并 sigma 并 sigma^2 并 sigma^3 并 ...

(5)串:设sigma是一个字母表,任意sigma的克林闭包上的每一个元素,称为sigma的一个串

串是字母表中符号的一个有穷序列

串s的长度,通常记作|s|,是指s中符号的个数

空串是长度为零的串,用\varepsilon表示

(6)串上的运算:

连接:x,y->xy

空串是连接运算的单位元,集对于任何串s都有

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值