编译第3章习题(文法和语言)_09级

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

习题第3章文法和语言

1.写一文法,使其语言是偶整数集合,但不允许由0打头。3.写一文法G,使得L(G) = { a m b n| m≥0, n≥1 }

4.写一文法G,使得L(G) = { a m b n c p| m≥0, n≥0, p≥0 } 5.设有文法G1:S → AaB

S → a

A → AB

A → b

A →ε

B → bB

B →ε

写一文法G2,使得L(G1) = L(G2),并且G2不含空规则。6.写一文法,使其语言是十位数不是0的整数集合。

7.写出以下文法G所定义的语言L(G)。

G:S → SaS

S → b

S → d

8.设有文法G1:S → Sab

S → c

S → d

将其改写成以下形式的文法G2,每条规则形如:

V → xW

或V → y

其中V和W为非终结符,x和y为终结符串。

9.设有文法G1:S → abcdB

B → efgB

B → b

将其改写成以下形式的3型文法G2,每条规则形如:

V → pW

或V → q

其中V和W为非终结符,p和q为终结符。

10.设有文法G1:S → aBBaS

B → bbAA

A → aAbBc

A → a

将其改写成以下形式的文法G2,每条规则形如:

V → pX1X2…X n

或V → q

其中V和X i为非终结符,p和q为终结符。

11.已知C语言的下标变量形如:

a[E][E]…[E]

按第10题要求的文法G2的形式写出下标变量文法。12.设有文法G1:S → aBcA

S → aBdB

A → bA

A → aB

B → Bd

B → a

将其改写成文法G2,使得对每个非终结符均无两个不同规则能导出相同的终结开头符。13.设有文法G:S → aBbD

B → bSD

B → aDa

B → bb

D → aBD

证明L(G)为空语言。

14.设有文法G1:S → 0Y | 1X | 1Y | 1S |ε

X → 1Y | 1S |ε

Y → 1Z

Z → 1S |ε

将其改写成不含空规则的文法G2,且L(G1) = L(G2)∪{ε}。

15.设有文法G:E → E+T | T

T → T*F | F

F → i | (E)

(1)构造句子(i*i+i)*i的语法树,并写出该句子的规范推导过程;

(2)构造句型F*(T+i)+i的语法树,并求出该句型的所有短语、简单短语和句柄。16.构造一个二义性文法。

17. 课本P49. 第14题(1)(2)

18. 课本P49. 第16题(2)

相关文档
最新文档