《编译原理》考试试题编译原理》
(所有答案必须写在答题纸上)所有答案必须写在答题纸上)20061225
一、5×6分回答下列问题:1.什么是S属性文法?什么是L属性文法?它们之间有什么关系?2.什么是句柄?什么是素短语?3.划分程序的基本块时,确定基本块的入口语句的条件是什么?4.运行时的DISPLAY表的内容是什么?它的作用是什么?5.对下列四元式序列生成目标代码:ABCDEFGADHG2其中,H是基本块出口的活跃变量,R0和R1是可用寄存器二、8分设Σ0,1上的正规集S由倒数第二个字符为1的所有字符串组成,请给出该字集对应的正规式,并构造一个识别该正规集的DFA。三、6分写一个文法使其语言为LGa
bmamb
m
≥1。四、8分对于文法GEE→TETT→FTFF→Ei1写出句型TFi的最右推导并画出语法树。2写出上述句型的短语,直接短语、句柄和素短语。五、12分设文法GS:
S→SiAAA→ABBB→A1.构造各非终结符的FIRSTVT和LASTVT集合;2.构造优先关系表和优先函数。
六、9分设某语言的dowhile语句的语法形式为S→doS1WhileE其语义解释为:
S1的代码E的代码
真假
1
f针对自下而上的语法分析器,按如下要求构造该语句的翻译模式:1写出适合语法制导翻译的产生式;2写出每个产生式对应的语义动作。七、8分将语句ifAX∧B0the
八、10分设有基本块如下:T1SRT23T312T2T4SRAT1T4T5SRBT5T6T5T3BT61画出DAG图;2设AB是出基本块后的活跃变量,请给出优化后的四元式序列。九、9分设已构造出文法GS:2B→aB1S→BB的LR分析表如下ACTIONbs4s7s4r3r1s6r2s7r3r2r293B→bwhileC0doCCD翻译成四元式。
GOTOaccS1B258
状态0123456789
as3s6s3r3
假定输入串为abab,请给出LR分析过程即按照步骤给出状态,符号,输入串的变化过程。(END))
2
f《编译原理》考试试题编译原理》
(所有答案必须写在答题纸上)所有答案必须写在答题纸上)20061225
一、回答下列问题:30分1.什么是S属性文法?什么是L属性文法?它们之间有什么关系?解答:S属性文法是只含有综合属性的属性文法。(2分)L属性文法要求对于每个产生式AX1X2…X
,其每个语义规则中的每个属性或者是综合属性,或者是Xj的一个继承属性,且该属性仅依赖于:(1)产生式Xj的左边符号X1X2…Xj1的属性;(2)A的继承属性。(2分)S属性文法是L属性文法的特例。(2分)2.什么是句柄?什么是素短语?一个句型的r