- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE
PAGE 8
《编译原理》考试试题
(所有答案必须写在答题纸上)
(2006.12.25)
一、(5×6分)回答下列问题:
1.什么是S-属性文法?什么是L-属性文法?它们之间有什么关系?
2.什么是句柄?什么是素短语?
3.划分程序的基本块时,确定基本块的入口语句的条件是什么?
4.运行时的DISPLAY表的内容是什么?它的作用是什么?
5.对下列四元式序列生成目标代码:
A:=B*C
D:=E+F
G:=A+D
H:=G*2
其中,H是基本块出口的活跃变量, R0和R1是可用寄存器
二、(8分)设?={0,1}上的正规集S由倒数第二个字符为1的所有字符串组成,请给出该字集对应的正规式,并构造一个识别该正规集的DFA。
三、(6分)写一个文法使其语言为L(G)={ anbmambn | m,n≥1}。
四、(8分)对于文法G(E):
E?T|E+T
T?F|T*F
F?(E)|i
1. 写出句型(T*F+i)的最右推导并画出语法树。
2. 写出上述句型的短语,直接短语、句柄和素短语。
五、(12分)设文法G(S):
构造各非终结符的FIRSTVT和LASTVT集合;
构造优先关系表和优先函数。
六、(9分)设某语言的do-while语句的语法形式为
S ? do S(1) While E
真
假
S(1)的代码
E的代码
其语义解释为:
针对自下而上的语法分析器,按如下要求构造该语句的翻译模式:
(1) 写出适合语法制导翻译的产生式;
(2) 写出每个产生式对应的语义动作。
七、(8分)将语句 if (AX) ? (B0) then while C0 do C:=C+D; 翻译成四元式。
八、(10分) 设有基本块如下:
T1:=S+R
T2:= 3
T3:= 12/T2
T4:=S/R
A:=T1-T4
T5:=S+R
B:=T5
T6:=T5*T3
B:=T6
(1)画出DAG图;
(2)设A,B是出基本块后的活跃变量,请给出优化后的四元式序列。
九、(9分) 设已构造出文法G(S):
(1) S ? BB (2) B ? aB (3) B? b
的LR分析表如下
ACTIONGOTO状态ab#SB0s3s4121acc2s6s753s3s484r3r35r16s6s797r38r2r29r2
假定输入串为abab,请给出LR分析过程(即按照步骤给出状态,符号,输入串的变化过程)。
(END)
《编译原理》考试试题
(所有答案必须写在答题纸上)
(2006.12.25)
回答下列问题:(30分)
1.什么是S-属性文法?什么是L-属性文法?它们之间有什么关系?
解答:
S-属性文法是只含有综合属性的属性文法。 (2分)
L-属性文法要求对于每个产生式A?X1X2…Xn,其每个语义规则中的每个属性或者是综合属性,或者是Xj的一个继承属性,且该属性仅依赖于:
产生式Xj的左边符号X1,X2…Xj-1的属性;
A的继承属性。 (2分)
S-属性文法是L-属性文法的特例。 (2分)
2.什么是句柄?什么是素短语?
一个句型的最左直接短语称为该句型的句柄。(3分)
素短语是这样的一个短语,它至少包含一个终结符并且不包含更小的素短语。(3分)
3.划分程序的基本块时,确定基本块的入口语句的条件是什么?
解答:
(1)程序第一个语句,或
(2)能由条件转移语句或无条件转移语句转移到的语句,或
(3)紧跟在条件转移语句后面的语句。
4.(6分)运行时的DISPLAY表的内容是什么?它的作用是什么?
答:DISPLAY表是嵌套层次显示表。每当进入一个过程后,在建立它的活动记录区的同时建立一张嵌套层次显示表diaplay.假定现在进入的过程层次为i,则它的diaplay表含有i+1个单元,自顶向下每个单元依次存放着现行层、直接外层、…、直至最外层(主程序,0层)等每层过程的必威体育精装版活动记录的起始地址。通过DISPLAY表可以访问其外层过程的变量。
5.(6分)对下列四元式序列生成目标代码:
A:=B*C
D:=E+F
G:=A+D
H:=G*2
其中,H是基本块出口的活跃变量, R0和R1是可用寄存器
答:
LD R0, B
MUL R0, C
LD R1, E
ADD R1, F
ADD R0, R1
MUL R0, 2
ST R0, H
二、设?={0,1}上的正规集S由倒数第二个字符为1的所有字符串组成,
您可能关注的文档
- 北轴钢结构安全施工方案研讨.doc
- 贝氏体钢轨研讨.doc
- 第五章_包装装备案例.ppt
- 备战高考语文错题集研讨.doc
- 第五章_不锈钢案例.ppt
- 背诵西师版小学语文毕业总复习研讨.doc
- 第五章_采暖、燃气工程施工图预算案例.ppt
- 第三章观赏植物分类案例.ppt
- 奔驰维修案例研讨.doc
- 第三章管理信息系统的技术基础案例.ppt
- 北外《国际贸易实务》知识要点1.pdf
- 小学生安全课教案.doc
- 2024年全球及中国激光二极管驱动芯片行业头部企业市场占有率及排名调研报告.docx
- 2024年全球及中国车辆牵引电气组件行业头部企业市场占有率及排名调研报告.docx
- 2024-2030全球液体化学品运输服务行业调研及趋势分析报告.docx
- 2024-2030全球变压器非晶铁心行业调研及趋势分析报告.docx
- 2024-2030全球AR眼镜光学技术行业调研及趋势分析报告.docx
- 2024-2030全球主负继电器行业调研及趋势分析报告.docx
- 2024-2030全球白光干涉膜厚检测系统行业调研及趋势分析报告.docx
- 2024年全球及中国抗过敏鼻炎凝胶行业头部企业市场占有率及排名调研报告.docx
文档评论(0)