编译原理习题解答
更新时间:2023-09-13 11:52:02 阅读量: 教学研究 文档下载
- 编译原理试题及答案推荐度:
- 相关推荐
编译原理习题解答 页1/1
第二章:习题2-4 Table表
var x,y; procedure p; var a;
procedure q; var b; begin b:=10; end; procedure s; var c,d; procedure r; var e,f; begin call q; end; begin call r; end; begin call s; end;
begin call p; end
根据:Page289,变量table:array[0..txmax] of record 结构体以及block函数得到下表,而表中各部分的含义,见教材Page18,Page19 Name x y p a q s c d r
Kink variable variable procedur variable procedur procedur variable variable procedur Val /Level 0 0 0 1 1 1 2 2 2 Adr 3 4 1 3 3 7 3 4 0 Size 0 0 0 0 4 0 0 0 0 编译原理习题解答 页2/2
第三章 文法和语言
5. 写一文法,使其语言是偶正整数的集合 要求:
(1) 允许0打头 (2) 不允许0打头 解:
(1) G[S]=({S,P,D,N},{0,1,2,…,9},P,S)
P:
S?PD|D P->NP|N
D?0|2|4|6|8
N->0|1|2|3|4|5|6|7|8|9
(2) G[S]=({S,P,R,D,N,Q },{0,1,2,…,9},P,S)
P:
S?PD|P0|D P->NR|N R->QR|Q D?2|4|6|8
N->1|2|3|4|5|6|7|8|9 Q->0|1|2|3|4|5|6|7|8|9
6. 已知文法G:
<表达式>::=<项>|<表达式>+<项>|<表达式>-<项> <项>::=<因子>|<项>*<因子>|<项>/<因子> <因子>::=(<表达式>)|i。
试给出下述表达式的推导及语法树。
(1)i; (2)(i) (3)i*i; (4)i*i+i; (5)i+(i+i); (6)i+i*i。
解:
(1) v=<表达式>=><项>=><因子>=>i=w
(2) v=<表达式>=><项>=><因子>=>(<表达式>)=>(<项>)=>(<因子>)=>(i)=w (3) v=<表达式>=><项>=><项>*<因子>=><因子>*<因子>=>i*i=w (4) v=<表达式>=><表达式>+<项>=><项>+<项>=><项>*<因子>+<项>
=><因子>*<因子>+<因子>=>i*i+i=w
(5) v=<表达式>=><表达式>+<项>=><项>+<项>=><因子>+<因子>=>i+(<表达式>)
=> i+(<表达式>+<项>)=>i+(<项>+<项>)=> i+(<因子>+<因子>)=>i+(i+i)=w (6) v=<表达式>=><表达式>+<项>=><项>+<项>=><因子>+<项>=>i+<项>
=>i+<项>*<因子>=> i+<因子>*<因子>=> i+i*i=w
语法树见下图:
编译原理习题解答 页3/3
(1)i <表达式> <项> <因子> i
(2)(i) <表达式> <项> <因子> ( <表达式> )
<项> <因子> i
(4) i*i+i <表达式>
(5) i+(i+i) <表达式>
<表达式> + <项> <项> <因子> i
<因子> ( <表达式> ) <表达式> + <项> <项> <因子>
<因子> i
(3)i*i <表达式> <项>
<项> * <因子> <因子> i
i
(6) i+i*i <表达式>
<表达式> + <项> <项> <因子> i
<项> * <因子> <因子> i
i
<表达式> + <项> <项> <项> * <因子> <因子> i
i
<因子> i
i
7. 为句子i+i*i构造两棵语法树,从而证明下述文法G[<表达式>]是二义的。 <表达式>::=i|(<表达式>)|<表达式><运算符><表达式> <运算符>::=+|-|*|/
解:为句子i+i*i构造的两棵语法树如下:
<表达式> <表达式>
<表达式> + <表达式> <表达式> * <表达式>
i <表达式> * <表达式> <表达式> + <表达式> i
i i i i
所以,该文法是二义的。
编译原理习题解答 页4/4
8. 习题1中的文法G[S]是二义的吗?为什么?
答:是二义的。因为对于句子abc可以有两种不同的生成树,即:S=>Ac=>abc和S=>aB=>abc 11. 令文法G[E]为: E?T|E+T|E-T T?F|T*F|T/F F?(E)|i
证明E+T*F是它的一个句型,指出这个句型的所有短语、直接短语和句柄。 解:可为E+T*F构造一棵语法树(见下图),所以它是句型。 E
E + T
T * F
从语法树中容易看出,E+T*F的短语有:
T*F是句型E+T*F的相对于T的短语,也是相对于规则T?T*F的直接短语。 E+T*F是句型E+T*F的相对于E的短语。 句型E+T*F的句柄(最左直接短语)是T*F。
12. 下述文法G[E]生成的语言是什么?给出该文法的一个句子,该句子至少含五个终结符,构造该句子的语法树。证明:
(1)计算文法G[E]的语言:
由于L(T)={(a|b|c)((a|b|c)(*|/))|n>=0} 所以L(E)={L(T)(L(T)(+|-))|n>=0}
n
n
(2)该文法的一个句子是aab*+,它的语法树是:
a a
(3) 证明:
由于下面的语法树可以生成
编译原理习题解答 页5/5
由于
由于
显然,句型
(1){abab|n,m>=0} (2){1010|n,m>=0}
(3){WaW|W属于{0|a},W表示W的逆}
解:
(1)所求文法为G[S]=({S,A},{a,b},P,S),其中P为: S?AA A?aAb|ε
(2)所求文法为G[S]=({S,A},{0,1},P,S),其中P为: S?1S0|A
A?0A1|ε
(3)W属于{0|a}是指W可以的取值为{ε,0,a,00,a0,aa0,00aa,a0a0,…}
如果W=aa0a00,则W=00a0aa。
所求文法为G[S]=({S,P,Q},{0,a},P,S),其中P为: S?0S0|aSa|a
nmnm
t
*
t
*
t
nmmnnnmm
15. 语言{WaW}和{abcd}是上下文无关的吗?能看出它们反映程序设计语言的什么特性吗?
答:生成语言{WaW}的文法非常简单,如 G[S]: S?WaW
W?aW|bW|ε
可见G[S]是上下文无关的。
nmnm
生成语言{abcd}的文法非常复杂,用上下文无关文法不可能办到,只能用上下文有关文法。这是因
nnmm
为要在ac的中间插入b而同时要在其后面插入d。即a,c相关联,b,d相关联。 这说明对语言的限定越多(特别是语言中的符号前后关联越多),生成它的文法越复杂,甚至于很难找到一个上下文法无关文法。
16.给出生成下述语言的三型文法:
n
(1){a|n>=0}
nm
(2){ab|n,m>=1}
nmk
(3){abc|n,m,k>=0} 解:
正在阅读:
编译原理习题解答09-13
小火猴的日记10-29
历年全国部分高校考博英语作文范文10-08
常见词根01-08
大学学生会期末工作总结精编八篇精选08-02
1怎么保持物价稳定:“涨”字牵动百姓心07-04
日本内阁库藏本明代秘本11-30
2018年社会工作者初级《综合能力》复习笔记(重点归纳) - 图文10-14
2019届高考一轮:第24讲-通过神经系统的调节学案(含答案)03-29
电解铝厂安全规程11-17
- 公务员上岸同学告诉你,怎样走出面试中常见的十大误区
- 作表率,我们怎么办(办公室主任)
- 乘务员安全责任书
- 增员面试流程
- 河南省焦作市规模以上租赁和商务服务业企业应付职工薪酬数据洞察报告2019版
- 最新4社区工作者面试题
- 个人简历表
- 男教工体检必检项目
- 河南省兰考县规模以上租赁和商务服务业企业应付职工薪酬数据洞察报告2019版
- 兼职译员测试稿
- 河南省开封市规模以上租赁和商务服务业企业应付职工薪酬数据洞察报告2019版
- 永州职业技术学院校园总体规划-永州职业学院
- 最新5、培训科长笔试题(答案)
- 2019雅商酒店境外人员登记培训稀有资料,不可错过
- 小学教师求职简历范文
- 红酒知识与礼仪
- 春节给领导拜年的短信拜年词
- 2019年上半年中小学教师资格证结构化面试真题1
- 20XX年县干部培训工作目标
- 硬笔试听课
- 习题
- 编译
- 解答
- 原理
- 数列,极限,数学归纳法·等比数列
- 大学英语综合教程2 第三版 课后习题
- 2015-2016学年高中历史 第三单元 第9课 北美大陆上的新体制学案 岳麓版必修1
- 中学语文教学研究1-9章习题精编及综合复习试题与答案(非常重要)
- 华中师范大学住房细则
- 建筑物理环境学温度
- 求不定方程整数解的常用方法
- 特定多个客户资产管理计划代销协议模板
- 1汽轮机考试复习
- 枣园镇中心幼儿园师德师风建设活动月实施方案
- 内控制度
- 道德经 注音版
- 山东建筑工程建筑结构施工技术资料-全套资料表格DB37T5072-2016word
- 碱激发胶凝材料基本原理及其应用
- 汽车发动机工作页
- 八年级英语Unit 8 How was your school trip导学案
- 2015年江苏省南京市高淳区中考数学一模试卷
- 成都理工大学核辐射测量方法复习题(完整版)
- 物联网中的几种无线通信技术(20111122) - 图文
- 发酵培养基的优化