- 19
- 0
- 约2.63千字
- 约 3页
- 2017-06-02 发布于河南
- 举报
【习题答案】第07章 语义分析与中间代码生成
《编译原理》课后练习参考答案 第07 章 语义分析与中间代码生成
课后练习参考答案
第07 章 语义分析与中间代码生成
1. 将下列语句翻译为逆波兰表示(后缀式)、三元式和四元表示:
a:=(b+c)*e+(b+c)/f
【解题思路】
把中缀式转换为后缀式的简单方法:按中缀式中各运算符的优先规则,从最先执行的部
分开始写,一层层套。如a≤b+c∧a>d∨a+b≠e,先把b+c 写为bc+;然后把a≤套上去,
成为abc+≤;再把a>d 表示为ad>;然后把∧套上去,成为abc+≤ad>∧,依此类推。
四元式由4 个部分组成:算符op、第1和第2运算量arg1 和arg2,以及运算结果result。
运算量和运算结果有时指用户自定义的变量,有时指编译程序引进的临时变量。如果 op 是
一个算术或逻辑算符,则result 总是一个新引进的临时变量,用于存放运算结果。
三元式只需3 个域:op、arg1 和arg2。与四元式相比,三元式避免了临时变量的填入,
而是通过计算这个临时变量的语句的位置来引用这个临时变量。我们很容易把一个算术表达
式或一个赋值句表示为四元式序列或三元式序列。
【解】
逆波兰表示为:
bc+e*bc+f/+:=
三元式序列为:
(1)(+,b,c)
(2)(* ,(1) ,e)
(3)(+ ,b,c)
(4)(/ ,(3) ,f)
(5)(+ ,(2) ,(4))
(6)(:= ,a,(5))
四元式序列为:
(1)(+ ,b,c,T1)
(2)(* ,T1,e,T2)
(3)(+ ,b,c,T3)
(4)(/ ,T3,f,T4)
(5)(+ ,T2,T4,T5)
(6)(:= ,T5, ,a)
共3 页,第1 页
《编译原理》课后练习参考答案 第07 章 语义分析与中间代码生成
2. 将下列C程序的执行语句翻译成三地址代码(设 S.next 为 L0):
if ( i j )
s = 10 * s ;
else
i = - j ;
【解】
翻译结果如下:
if i j goto L1
goto L2
L1: t0 = 10 * s
s = t0
goto L0
L2: t1 = - j
i = t1
L0: ...
3. 给出下面表达式的逆波兰表示(注:用¥表示 if-then-else 运算):
if (x+y)*z=0 then s:=(a+b)*c else s:=a*b*c
【解】
逆波兰式为:xy+z*0=sab+c*:=sab*c*:=¥
4. 写出下列语句的四元式序列:(假设地址从 100 开始)
WHILE AC AND BD DO
IF A=1 THEN C:=C+1
ELSE WHILE A=D DO
A:=A+2;
【解】
(100) (j,A,C,102)
您可能关注的文档
- Networks中文翻译.pdf
- PHYS 102基础物理 II—台湾校区.pdf
- TS8001S 3.2 寸.pdf
- Yew Wah Newsletter to Parents耀华家长周刊.pdf
- 【F2】 F2中高错误率(70%以上)重点题分析—— Celine Ji.pdf
- 【投票】 你心中漳平十大特色小吃应该是谁,你说的算!.pdf
- 【精透解析版】-2015年河南省中招物理试题及答案-郑州中考物理.pdf
- 【香港留学】DEM结构特征对坡度坡向的影响分析_刘学军.pdf
- 【香港留学】秸秆焚烧期间徐州市空气污染物时空分布特征分析_吴立新.pdf
- 如何撰写科技论文How.To.Write.A.Scientific.paper.pdf
- 2026-2030中国工控机市场现状趋势与前景战略分析研究报告.docx
- 2026-2030中国电子铜浆市场销售量预测及供需前景趋势分析研究报告.docx
- 2026-2030中国婴儿配方食品行业市场发展趋势与前景展望战略分析研究报告.docx
- 2026-2030中国薄膜涂布器行业市场发展趋势与前景展望战略研究报告.docx
- 2026-2030混凝土搅拌车产业市场发展分析及发展趋势与投资研究报告.docx
- 2026-2030中国智能建筑行业十四五发展分析及投资前景与战略规划研究报告.docx
- 2026-2030静电纺丝装置行业市场现状供需分析及重点企业投资评估规划分析研究报告.docx
- 2026-2030中国光热行业需求规模预测及发展前景风险剖析研究报告.docx
- 2026-2030网络运营产品入市调查研究报告.docx
- 2026-2030中国浪涌保护器件(SPD)行业经营状况及未来需求监测研究报告.docx
最近下载
- Braun布朗IdentityCollection 旋转榨汁机 J 700说明书.pdf
- 社区工作者个人缺点.pdf VIP
- (正式版)DBJ33∕T 1315-2024 《 生活垃圾可回收物分拣中心技术规程 》.pdf VIP
- 婺源介绍课件.pptx VIP
- 双寡头内容平台双边定价与投资策略研究.pdf VIP
- Linux系统管理基础项目教程(CentOS 7.2)(微课版)任务3.5.2 DNS域名服务器的配置与管理(反向解析&辅助DNS) .ppt VIP
- XF 86-2009 简易式灭火器.docx VIP
- 110kV-500kV架空输电线路载流量参考表.docx VIP
- 自-2008优秀的数学建模论文 .doc VIP
- 党支部组织生活会个人发言四篇(2026五个对照).docx VIP
原创力文档

文档评论(0)