编译原理期末考试试卷(A卷)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

编译原理期末考试试卷(A卷) 、简述编译程序的工作过程。(10)

:■、构造下列正规式相应的DFA (用状态转换图表示)

(15)

(1) 1( 0 | 1)*100

(2) 0*10*10*10*1

(3) letter ( letter | digit )*

、给出下面语言的相应文法:(15)

15)

L1={a f1b n | n > 1} l_2={a n b m+n a m | n》1, m > 0}

四、对下面的文法G:

S T a | b | (T)

T, S | S

(1) 消去文法的左递归,得到等价的文法G2;

(2) 判断文法G2 是否LL( 1)文法,如果是,给出其预测分析表。

五、设有文法G[A] :A t BCc | gDB

B T bCDE | £

C t DaB | ca

D t dD | £

i gAf | c

(1) 计算该文法的每一个非终结符的FIRST集和FOLLOW集;

(2) 试判断该文法是否为LL (1)文法。(15)

六、对表达式文法G:

E T E+T | T

T T T*F | F

F t (E) | I

(1)造各非终结符的FIRSTVT和LASTVT集合;

2)构造文法的算符优先关系表。 (15)

七、有定义二进制整数的文法如下:

L T LB | B

B T 0 | 1

。(15)

构造一个翻译模式,计算该二进制数的值(十进制的值)

、给出下面语言的相应文法: L={a b n | n> 1} (15)

L2={a n b m+n a m | n》1,m > 0}

G1:

A—aAb |ab G1:

S—AB

A—aAb | ab B—bBa | £

编译程序的工作过程,是指从输入源程序开始到输出目标程序为止的整个过程,是非常复杂的,就其过程而言,一般可以划分为五个工作阶段:① 词法分析,对构成源程序的字符串进行扫描和分解,识别出一个个的单词;

②语法分析,根据语言的语法规则,把单词符号串分解成各类语法单位;

③语义分析与中间代码产生,即对各类语法单位,分析其汉一并进行初步翻译;④代码优化,以期产生更高效的代码;⑤目标代码生成,把中间代码变换成特定机器上的低级语言指令形式。

、构造下列正规式相应的DFA(用状态转换图表示)(15)

(4) 1( 0 | 1)*1

1

四、对下面的文法G:

S T a | b | (T)

T, S | S

(1) 消去文法的左递归,得到等价的文法G2;

(2) 判断文法G2是否LL( 1)文法,如果是,给出其预测分析表。(15) G2:

4 a | b | (T)

T T ST'

T'T, S T' | £

五、设有文法G[A]:

A T BCc | gDB

B T bCDE | £

C T DaB | ca

D T dD | £

E T gAf | c

(1) 计算该文法的每一个非终结符的FIRST集和FOLLOW集;

(2) 试判断该文法是否为LL (1)文法。(15)

是LL (1)

六、对表达式文法G:

E T E+T | T

T T T*F | F

F T(E) | I

(1)造各非终结符的FIRSTVT和LASTVT集合;

2)构造文法的算符优先关系表。(15)

L T LB | B

B T 0 | 1

构造一个翻译模式,计算该二进制数的值(十进制的值)。(15)引入L、B的综合属性val,翻译模式为:

S T L{pri nt}

L T L1B{= *2+}

L T B{= }

B T 0{=0}

B T1 {=1}

相关文档
最新文档