导航:首页 > 源码编译 > 编译原理文法的题咋做

编译原理文法的题咋做

发布时间:2022-06-29 07:49:10

编译原理题:分别构造下列语言的文法(4个题) 200分献上。。。

(3)任何不是以0打头的所有奇整数所组成的集合

解:G(S)
=
({S,A,B,I,J},{-,0,1,2,3,4,5,6,7,8,9},{S→J|IBJ,B→0B|IB|e,
I→J|2|4|6|8,
Jà1|3|5|7|9},S)
(4)所有偶数个0和偶数个1所组成的符号串集合

解:对应文法为
S→0A|1B|e,A→0S|1C
B→0C|1S
C→1A|0B

⑵ 编译原理 文法题目

首先扩展文法为:
1) S1->S
2) S->aS
3) S->bS
4) S->a
则:
I0 = Closure({S1->.S})={S1->.S,S->.aS,S->.bS,S->.a}
go(I0,S) = Closure({S1->S.})={S1->S.} = I1
go(I0,a) = Closure({S->a.S,S->a.})={S->a.S,S->.aS,S->.bS,S->.a,S->a.} = I2
go(I0,b) = Closure({S->b.S})={S->b.S,S->.aS,S->.bS,S->.a}=I3
go(I2,S) = closure({S->aS.})={S->aS.}=I4
go(I2,a) = Closure({S->a.S,S->a.}) = I2
go(I2,b) = Closure({S->b.S}) =I3
go(I3,S) = Closure({S->bS.}) = {S->bS.} = I5
go(I3,a) = Closure({S->a.S,S->a.}) = I2
go(I3,b) = Closure({S->b.S}) = I3

由图所示,状态I2,既有归约项目(S->a.)又有移近项目(S->.aS,S->.bS,S->.a),产生冲突。当用SRL分析法时,需向前看一步,即求出:
Follow(S) = Follow(S1) = {#}
则,Follow(S)∩{a,b} =∮
故而Action(I2,a) = s2
Action(I2,b) = s3
Action(I2,#) = r4

则构造出srl分析表如下所示:
Action Goto
a b # S
I0 s2 s3 1
I1 acc
I2 s2 s3 r4 4
I3 s2 s3 5
I4 r2 r2 r2
I5 r3 r3 r3

请采纳。

⑶ 软件设计师 编译原理 文法的一道题,求解

我想first[A] 不应该像你说的那样定义:从A出发能推导出的终结符号的集合中。这样这道题考得就没有什么意义了:只要知道非终结符L都能推出哪些终结符就可以了。如果是要考查对first的理解的话,应该按照first的本意,即“第一个终结符”,这样就只有B是正确的

⑷ 编译原理文法题 求解

一看就是计科的 …………
我们都是 LL1 SLR1文法没怎么用过
进来问候下
有空加个好友 讨论下

⑸ 编译原理 有文法G(S)这道题怎么做

首先扩展文法为:

1)S1->S

2)S->aS

3)S->bS

4)S->a

则:

I0=Closure({S1->.S})={S1->.S,S->.aS,S->.bS,S->.a}

go(I0,S)=Closure({S1->S.})={S1->S.}=I1

go(I0,a)=Closure({S->a.S,S->a.})={S->a.S,S->.aS,S->.bS,S->.a,S->a.}=I2

go(I0,b)=Closure({S->b.S})={S->b.S,S->.aS,S->.bS,S->.a}=I3

go(I2,S)=closure({S->aS.})={S->aS.}=I4

go(I2,a)=Closure({S->a.S,S->a.})=I2

go(I2,b)=Closure({S->b.S})=I3

go(I3,S)=Closure({S->bS.})={S->bS.}=I5

go(I3,a)=Closure({S->a.S,S->a.})=I2

go(I3,b)=Closure({S->b.S})=I3

由图所示,状态I2,既有归约项目(S->a.)又有移近项目(S->.aS,S->.bS,S->.a),产生冲突。当用SRL分析法时,需向前看一步,即求出:

Follow(S)=Follow(S1)={#}

则,Follow(S)∩{a,b}=∮

故而Action(I2,a)=s2

Action(I2,b)=s3

Action(I2,#)=r4

则构造出srl分析表如下所示:

ActionGoto

ab# S

I0 s2s3 1

I1 acc

I2s2s3 r4 4

I3s2s3 5

I4 r2r2r2

I5 r3r3 r3

⑹ 编译原理 设有文法G(S) 这题怎么做求答案 谢谢

题出错啦,G[S]表示开始符号是S,你的产生式中就没有S啊,应更改改为G[E]

⑺ 编译原理中怎样写文法和语言

写文法:首先要清楚语言集的特征,即找出其特殊值及通式,然后再按此考虑去写出文法
写语言:要先理解推导、句型、句子的概念,语言就是句子的全体。

⑻ 求解编译原理的一道题:设有文法如下

首先要做这题你要知道判别文法类型
包括四个层次:

0-型文法(无限制文法或短语结构文法)包括所有的文法。该类型的文法能够产生所有可被图灵机识别的语言。可被图灵机识别的语言是指能够使图灵机停机的字串,这类语言又被称为递归可枚举语言。注意递归可枚举语言与递归语言的区别,后者是前者的一个真子集,是能够被一个总停机的图灵机判定的语言。
1-型文法(上下文相关文法)生成上下文相关语言。这种文法的产生式规则取如 αAβ -> αγβ 一样的形式。这里的A 是非终结符号,而 α, β 和 γ 是包含非终结符号与终结符号的字串;α, β 可以是空串,但 γ 必须不能是空串;这种文法也可以包含规则 S->ε ,但此时文法的任何产生式规则都不能在右侧包含 S 。这种文法规定的语言可以被线性有界非确定图灵机接受。
2-型文法生成上下文无关语言。这种文法的产生式规则取如 A -> γ 一样的形式。这里的A 是非终结符号,γ 是包含非终结符号与终结符号的字串。这种文法规定的语言可以被非确定下推自动机接受。上下文无关语言为大多数程序设计语言的语法提供了理论基础。
3-型文法(正规文法)生成正规语言。这种文法要求产生式的左侧只能包含一个非终结符号,产生式的右侧只能是空串、一个终结符号或者一个非终结符号后随一个终结符号;如果所有产生式的右侧都不含初始符号 S ,规则 S -> ε 也允许出现。这种文法规定的语言可以被有限状态自动机接受,也可以通过正则表达式来获得。正规语言通常用来定义检索模式或者程序设计语言中的词法结构。
正规语言类包含于上下文无关语言类,上下文无关语言类包含于上下文相关语言类,上下文相关语言类包含于递归可枚举语言类。这里的包含都是集合的真包含关系,也就是说:存在递归可枚举语言不属于上下文相关语言类,存在上下文相关语言不属于上下文无关语言类,存在上下文无关语言不属于正规语言类。

1)本题应该是--上下文无关文法

句子是产生式在推导时“仅仅有终结符”的任何一步
2)%mm%nn 是一个句子

由于下面一题的图我等级不够 不能贴图 发你邮箱

⑼ 编译原理文法问题,急急急

第一题
S->AB

A->aA'b
A'->aA'b|ε
B->B'
B'->dB'|ε
----------------------
第二题
S->aS'b

S'->aS'b|D
D->dD|ε
----------------------
第三题
最左推导的话,我认为要先消除左递归才行(把左递归转成右递归),消除之后:
N->DN'
N'->DN'|ε
D->0|1|2|...|9
最左推导为 N->DN'->2N'->2DN'->25N'->25DN'->258N'->258
规范推导(最右推导)为N->ND->N8->ND8->N58->D58->258
----------------------
第四题
构造一下语法树就知道了。直接短语是深度为2的节点(根节点是深度0)。短语是深度为2的节点代入深度为1的产生式中。句柄是所有直接短语中最左的那个。
1.baaa
>>>
_________S
_______/___\
______A_____B
_____/__\____|
____A___a___a
___/__\
__b___B
_______|
______a
直接短语为 Aa、a
短语为 Aaa
句柄为 Aa
2.bBaa
>>>
_________S
_______/___\
______A_____B
_____/__\____|
____A___a___a
___/__\
__b___B
直接短语为 Aa、a
短语为 Aaa
句柄为 Aa

⑽ 帮我做下两道简单的《编译原理》文法题目,在线等答案O(∩_∩)O谢谢!

阅读全文

与编译原理文法的题咋做相关的资料

热点内容
php七牛视频上传 浏览:13
php五星 浏览:311
使用api访问外部文件夹 浏览:220
自来水加密阀能控制水量吗 浏览:350
移动花卡定向app怎么订 浏览:429
php调用txt 浏览:260
西安软件公司程序员鼓励师 浏览:135
预制桩的加密区怎么区分 浏览:86
ea安装游戏选择文件夹 浏览:872
linuxapache负载均衡配置 浏览:651
pac文件编译软件 浏览:713
基于51单片机的电子时钟设计 浏览:848
手机屏幕解压的小游戏 浏览:749
gcc编译手册pdf 浏览:589
梁箍筋未标注加密区 浏览:629
自家网络连不上上面显示加密 浏览:388
编译后无法运行图片 浏览:595
linux系统修改文件命令 浏览:704
iphone如何安装中国石化app 浏览:179
app怎么写简历 浏览:681