- 130
- 1
- 约7.79千字
- 约 30页
- 2017-05-16 发布于河南
- 举报
编译原理及编译程序构造 部分课后答案(张莉 杨海燕编著)
第一章
练习1
2、典型的编译程序可划分为哪几个主要的逻辑部分?各部分的主要功能是什么?
典型的编译程序具有7个逻辑部分:
第二章
练习2.2
4.试证明:A+ =AA*=A*A
证:∵ A*=A0∪A+,A+=A1∪A2∪…∪An∪…
得:A*=A0∪A1∪A2∪…∪An∪…
∴ AA*=A(A0∪A1∪A2∪…∪An∪…)
= AA0∪AA1∪AA2∪…∪A An∪…
=A∪A2∪A3∪An +1∪…
= A+
同理可得:
A*A =(A0∪A1∪A2∪…∪An∪…)A
=A0 A∪A1A∪A2A∪…∪AnA∪…
= A∪A2∪A3∪An+1∪…
= A+
因此: A+ =AA*=A*A
练习2.3
1.设G[〈标识符〉]的规则是 :
〈标识符〉::=a|b|c|
〈标识符〉a|〈标识符〉c|
〈标识符〉0|〈标识符〉1
试写出VT和VN,
并对下列符号串a,ab0,a0c01,0a,11,aaa给出可能的一些推导。
解:VT ={a,b,c,0,1}, VN ={〈标识符〉}
(1) 不能推导出ab0,11,0a
(2)〈标识符〉=a
(3)〈标识符〉=〈标识符〉1
=〈标识符〉01
=〈标识符〉c01
=〈标识符〉0c01
= a0c01
(4)〈标识符〉=〈标识符〉a
=〈标识符〉aa
=aaa
2.写一文法,其语言是偶整数的集合
解:G[偶整数]:
偶整数::=
原创力文档

文档评论(0)