ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

语言及其文法

2021-05-02 09:05:00  阅读:218  来源: 互联网

标签:文法 终结符 语言 符号 及其 字母表 中排 符号串


基本概念

字母表

字母表是一个有穷符号集合
符号:字母数字、标点符号、…

字母表上的运算

两个字母表的乘积
字母表的n次幂:长度为n的符号串构成的集合
字母表的正闭包
字母表的克林闭包:任意符号串(长度可以为零)构成的集合

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

空串是连接运算的单位元(identity)

自然语言的例子——句子的构成规则

<句子>-><名词短语><动词短语>
<名词短语>-><形容词><名词短语>
<名词短语>-><名词>
<动词短语>-><动词><名词短语>
<形容词>->little
<名词>->apple
<动词>->eat
尖括号括起来的部分称为语法成分
未用尖括号括起来的称为语言的基本符号

文法的形式化定义

终结符(terminal symbol)是文法所定义的语言的基本符号,有时也称为token
非终结符(nonterminal)是用来表示语法成分的符号,有时也称为“语法变量”
产生式集合:产生式(production)描述了将终结符和非终结符组合成串的方法

符号约定
下述符号是终结符

  • 字母表中排在前面的小写字母,如a、b、c
  • 运算符,如+、*等
  • 标点符号,如括号、逗号等
  • 数字0、1、…、9
  • 粗体字符串,如id、if等

下述符号是非终结符

  • 字母表中排在前面的大写字母,如A、B、C
  • 字母S,通常表示开始符号
  • 小写、斜体的名字,如expr、stmt等
  • 代表程序构造的大写字母。如E(表达式)、T(项)和F(因子)

下述为文法符号
字母表中排在后面的大写字母(如X、Y、Z)表示文法符号(即终结符或非终结符)

终结符符号串
字母表中排在后面的小写字母(主要是u、v、…、z)

小写希腊字母,表示文法符号串(包括空串)

推到和归约的概念

标签:文法,终结符,语言,符号,及其,字母表,中排,符号串
来源: https://blog.csdn.net/weixin_44350891/article/details/116347291

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有