编译原理答案.pdfVIP

  • 0
  • 0
  • 约8.19千字
  • 约 11页
  • 2026-02-26 发布于青海
  • 举报

编译原理答案

编译原理复习回顾题

一、填空题

1.汇编程序将翻译成;编译程序将翻译成。

2.编译程序工作工程可以划分

为、、、和等5个基本阶段,同时还会伴有和。

3.对编译程序而言,输入数据是,输出数据是。

4.已知文法G[E]:E—T|E+T|E-F,T-F|T*F|T/F,,F—(E)|I(“,”

是间隔符号,不是文法中的符号)。该文法的开始符号(识别字符)是,

终结符号集合VT是,非终结符号结合VN是,句型T+T*F+i的短语

有。该文法消除直接左递归,改写后的文法为E-,T-,F

-.

5.Chomsky定以来寺中形式语言的文法分别为:文法(又称文

法)、文法(又称文法)、文法(又称文法)、文法(又称文法)。

6.编译过程中扫描器所完成的任务是从中识别出一个个具

有。

7.确定的有穷自动机是一个,通常表示为。

8.LL(k)分析中,第一个L的含义是,第二个L的含义是,“k”的

含义是。

9.LL(1)分析中,第一个L的含义是,第二个L的含义是,“1”的

含义是。

10.LR(0)分析中,“L”的含义是,“R”的含义是,“0”的含义

是。

11.SLR(1)分析中,“L”的含义是,“R”的含义是,“1”的含

义是。

12.LR(1)分析中,“L”的含义是,“R”的含义是,“1”的含义

是。

13.算术表达式:a*(-b+c)的逆波兰式表示为:。

14.算术表达式:a+b*(c+d/e)的逆波兰式表示为:。

15.在编译程序中安排中间代码生成的目的

是和。

16.语法制导的翻译程序能同时进行分析和分析。

17.根据所涉及的程序范围,优化可分为、、三种。

二、简单题

1.有人认为编译程序的词法分析、语法分析、语义分析和中间代

码生成、代码优化、目标代码生成五个组成部分是缺一不可的,这种

看法正确吗?说明理由。

2.多边扫描的程序是高质量的编译程序,优于单遍扫描的编译程

序”,对吗?为什么?

3.LR分析器与优先分析器在识别被归约串时的主要异同时什么?

三、给出生成下述语言的上下文无关的文法

{1n0m1m0n|n,m=0}

{WaWr|W属于{0|1}*,Wr表示W的逆}

四、给出生成下列语言的三型文法:

{an|n=0}

{anbm|n,m0}

{anbmck|n,m,k=0}

五、构造正规式1(0|1)*101相应的最小DFA。

六、构造正规式b(a|b)*bab相应的最小DFA。

七、已知文法G[S]:S-aH;H-aMd|d;M-Ab|ε;A

-aM|e.

1.求每个非终结符号的FIRST集和FOLLOW集;

2.判定该文法是否为LL(1)文法,如是,构造LL(1)预测分析表;

3.若是LL(1)文法,请给出输入串aaabd#的预测分析过程,并说

明该输入是G[S]的句子。

八、已知文法G[B]:B-BoT|T;T-TaF|F;F-nF|(B)|t|f。

1.计算G[B]的FIRSTVT和LASTVT;

2.构造G[B]的算符优先关系表并说明G[B]是否为算符有限文法;

3.若是算符优先文法,请给出输入ntofat#的分析过程,并说明该

输入是G[B]的句子。

九、文法G[S]:S-AB;A-aBa|ε;B-bAb|ε.

1.引入产生式S’-S,对文法进行改造为G[S’],计算G[S’]的

First和Follow集,由此判断该文法是否是SLR(1)文法;

2.构造G[S’]的项目集族和识别活前缀的DFA;

3.若是SLR(1)文法,请构造它的分析表;

4.给出输入baab#的SLR(1)分析过程。

十、对下图的流图:

文档评论(0)

1亿VIP精品文档

相关文档