编译原理----0型,1型,2型,3型文法

简介: 编译原理----0型,1型,2型,3型文法

0型文法:

解释: (左部)可以包含非终结符和终结符, (右部)可以包含非终结符和终结符,但是 (左部)中至少包含1个非终结符

符合:Ab-->b,B-->Bb

不符合:a-->b,ab-->BA,a-->bA

1型文法(上下文有关文法):

在0型文法的基础上,还需符号

 

解释:左部符号串长度必须小于右部符号串长度


符合:A--->bB        Aa--->abc        --->(特例)        aB--->


不符合:Ab-->c        Ba--->c        


2型文法(上下型无关文法):


在1型文法的基础上

符合:A--->aB        B--->BB        B-->ab

不符合:Ab--->aB        AA--->Ba        bb--->AB

3型文法(正规文法):

在2型文法的基础上

解释:产生式规则的右侧只能包含一个终结符后跟一个非终结符,或者只包含一个终结符,或者是空串。


右线性文法就是后半部分中非终结符在右侧,例如:A--->bA


左线性文法就是后半部分中非终结符在左侧,例如:B--->Ab


符合:A--->bA        B---->Ba        B---->BBa       A-->b


不符合:A--->AbB


从0型到3型文法描述能力是越来越小的:

即描述能力:0型>1型>2型>3型

从0型到3型文法的限制是越来越大的:

目录
相关文章
|
2月前
|
存储 机器学习/深度学习 编解码
阿里云服务器计算型c7、计算型c8a、计算型c8i、计算型c8y实例区别及选择参考
阿里云服务器计算型c7、计算型c8a、计算型c8i、计算型c8y是目前计算型实例规格中的热门实例规格,他们都同属于计算型实例,但是计算型c7属于第七代云服务器,而计算型c8a、计算型c8i、计算型c8y属于第八代云服务器,是最新一代的云服务器实例。本文将为大家展示这些实例规格之间的区别,以供参考和选择。
阿里云服务器计算型c7、计算型c8a、计算型c8i、计算型c8y实例区别及选择参考
|
3月前
|
C语言 C++
C++对C的改进和拓展\string类型
C++对C的改进和拓展\string类型
24 1
|
4月前
|
存储 编解码 网络协议
阿里云服务器计算型c7、计算型c7a、计算型c8a、计算型c8y实例区别及选择参考
在阿里云的活动中,属于计算型实例规格的云服务器一般会有计算型c7、计算型c7a、计算型c8a、计算型c8y这几个实例规格,与经济型e实例相比,这些实例均属于企业级实例,与通用算力u1实例相比的话这些实例规格等性能更强,这些计算型实例主要适用于网站应用、批量计算、视频编码等各种类型和规模的企业级应用,本文为大家介绍计算型c7、c7a、c8a、c8y实例区别,以供参考。
阿里云服务器计算型c7、计算型c7a、计算型c8a、计算型c8y实例区别及选择参考
|
4月前
|
存储 自然语言处理 编译器
C++新特性详细介绍 -----新基础类型
C++新特性详细介绍 -----新基础类型
|
4月前
|
C语言
循环类型
循环类型。
30 0
|
10月前
|
存储 安全 网络协议
阿里云服务器计算型c7、计算型c8a、计算型c8i实例区别及选择参考
阿里云服务器计算型c7、计算型c8a、计算型c8i是目前阿里云的活动中可选的计算型实例规格,他们都同属于计算型实例,但是计算型c7属于第七代云服务器,而计算型c8a、计算型c8i属于第八代云服务器,是最新一代的云服务器实例。那么它们之间具体有哪些区别呢?作为用户的我们应该如何选择呢?
286 0
阿里云服务器计算型c7、计算型c8a、计算型c8i实例区别及选择参考
|
存储 机器学习/深度学习 安全
阿里云服务器内存型r7和内存型r8y有什么区别?内存型r8y怎么样?
在我们通过阿里云的各个活动选购云服务器的时候,如果你是想购买2核16G、4核32G这种云服务器处理器与内存比为1:8配置的时候,会有内存型r7和内存型r8y实例可选,有的新手用户由于是初次选购,可能会不知道怎么选择,下面小编从内存型r7和内存型r8y实例各自的架构、处理器、存储与网络能力、使用场景及指标数据等几个方面先来介绍他们之间的区别,然后再介绍他们各自的收费标准与最新活动价格情况,这样大家就能了解他们的区别到底有多大,从而根据自己的需求及预算情况来决定选择哪个实例规格来完成上云。
334 0
阿里云服务器内存型r7和内存型r8y有什么区别?内存型r8y怎么样?
5.3.2.2 操作字符串类型数据
5.3.2.2 操作字符串类型数据
48 0
|
存储 JSON 前端开发
【MySQL笔记】数字类型、时间和日期类型、字符串类型
在数据库中,经常需要存储一些数字,适合用数字类型来保存。数字类型包括整数类型、浮点数类型、定点数类型、BIT(位)类型。
33472 1
【MySQL笔记】数字类型、时间和日期类型、字符串类型
|
存储 关系型数据库 MySQL
MySQL数据类型----布尔型,时间型,枚举型的简单介绍
MySQL数据类型----布尔型,时间型,枚举型的简单介绍
106 0