《编译原理》总复习-07级

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

《编译原理》总复习-07级

第一章编译程序的概述

(一)内容

本章介绍编译程序在计算机科学中的地位和作用,介绍编译技术的发展历史,讲解编译程序、解释程序的基本概念,概述编译过程,介绍编译程序的逻辑结构和编译程序的组织形式等。

(二)本章重点

编译(程序),解释(程序),编译程序的逻辑结构。

(三)本章难点

编译程序的生成。

(四)本章考点

全部基本概念。

编译程序的逻辑结构。

(五)学习指导

引论部分主要是解释什么是编译程序以及编译的总体过程。因此学习时要对以下几个点进行重点学习:翻译、编译、目标语言和源语言这几个概念的理解;编译的总体过程:词法分析,语法分析、语义分析与中间代码的生成、代码优化、目标代码的生成,以及伴随着整个过程的表格管理与出错处理。

第三章文法和语言课外训练

(一)内容

本章是编译原理课程的理论基础,主要介绍与课程相关的形式语言的基本概念,包括符号串的基本概念和术语、文法和语言的形式定义、推导与归约、句子和句型、语法分析树和二义性文法等定义、文法和语言的Chomsky分类。

(二)本章重点

上下文无关文法,推导,句子和句型,文法生成的语言,语法分析树和二义性文法。(三)本章难点

上下文无关文法,语法分析树,文法的分类。

(四)本章考点

上下文无关文法的定义。

符号串的推导。

语法分析树的构造。

(五)学习指导

要构造编译程序,就要把源语言用某种方式进行定义和描述。学习高级语言的语法描述是学习编译原理的基础。上下文无关文法及语法树是本章学习的重点。语法与语义的概念;程序的在逻辑上的层次结构;文法的定义,文法是一个四元组:终结符号集,非终结符号集,开始符号、产生式集;与文法相关的概念,字符,正则闭包,积(连接),或,空集,产生式,推导,直接推导,句子,句型,语言,最左推导,最右推导(规范推导);学会用文法来描述语言及通过文法能分析该文法所描述的语言;语法树及二义性的概念、能通过画语法树来分析一个文法描述的语言是否具有二义性;上下文无关文法的定义和正规文法的定义,能判断一个语言的文法是哪一类文法。

附训练试题:

1:

试构造生成语言L={a n b n c i|n≥1, i ≥0}的文法解:

2:

已知语言L={a n bb n| n ≥1}, 写出产生L的文法。

3:

已知文法G=({A,B,C},{a,b,c},A,P)

其中产生式P由以下组成:

A →abc A →aBbc

Bb→bB Bc →Cbcc

bC →Cb aC →aaB

aC →aa

问:此文法表式的语言是什么?

4

请给出描述语言={a2m+1 b m+1 | m>=0}∪{a2m b m+2| m>=0}的文法

5已知文法G[S]为:

S→dAB

A→aA|a

B→Bb |ε

G[S]产生的语言是什么?G[S]能否改写为等价的正则文法?

6:试写一文法,使其描述的语言L(G) 是能被5整除的整数集合。

7:已知语言L={x | x∈{a,b,c}*,且x重复排列是对称的(aabcbaa,aabbaa,等)写出该语言的文法。

第四章词法分析课外训练

(一)内容

本章介绍编译程序的第一个阶段词法分析的设计原理和设计方法,包括源程序输入与词法分析程序输出、正则文法及其状态转换图、确定的有限自动机(DFA)、不确定的有限自动机(NFA)、正则表达式与正规集。

(二)本章重点

词法分析器的逻辑结构与功能,状态转换图,正规表达式与正规集、DFA、NFA及其等价转换,NFA的确定化,DFA的最小化。

(三)本章难点

正则式与自动机的应用,NFA的确定化,DFA的最小化。

(四)本章考点

正规式到NFA的转换。

NFA的确定化。

DFA的最小化。

(五)学习指导

掌握正规文法、状态转换图、DFA、NFA、正规表达式和正规集的基本概念和词法分析器的设计与程序编写。词法分析的任务是对源语言所编写的代码进行从左到右的扫描,产生一个个的单词符号(token),由这些单词符号形成的中间程序是后续语法分析输入。在理论上词法分析器的构造是根据一种语言的正规文法描述形成相应的状态转换图(DFA),若输入字符串能够被该DFA接受,则认为当前输入是语言中的一个单词符号。因此,DFA的构造是本章学习的重点。

附训练试题:

1写出能被5整除的十进制整数的文法及正规表达式。

2:已知有限自动机如图

(1)以上状态转换图表示的语言有什么特征?

(2)写出其正规式与正规文法.

(3)构造识别该语言的确定有限自动机DFA.

3请构造与正规式R=(a*b)*ba(a|b)*等价的状态最少的DFA(确定有限自动机)

4设字符集∑={ a, b } ,请写出不以a开头的但以aa结尾的字符串集合的正规表达式,并构造与之等价的状态最少的DFA。

第五章自顶而下语法分析方法课外训练

(一)内容

本章介绍编译程序的第二个阶段语法分析的第一种设计方法和实现原理即自上而下分析的原理及无回朔的递归下降分析、 LL(1)分析法和相应程序构造。

(二)本章重点

自上而下分析的思想,LL(1)文法,LL(1)预测分析,递归下降分析程序的构造。

(三)本章难点

消除左递归,预测分析表的构造,求First集和Follow集,预测分析中的出错处理。(四)本章考点

LL(1)文法的判定。

递归下降分析程序的构造。

预测分析程序的构造与分析方法。

(五)学习指导

理解自上而下分析面临的问题,理解递归下降分析、LL(1)文法,掌握无回朔的递归下降分析方法的设计和程序实现、LL(1)分析表的构造与分析方法。语法分析是在词法分析的基础上判定程序的语法结构是否符合语法规则的过程。词法分析器的构造技术是编译器的主要技术。词法分析分为自上而下的分析(LL(K))和自下而上的分析(算符优先、LR(K))。本章先学习在逻辑概念上易于接受的自上而下的分析,即从文法开始符号出发,自上而下地为输入串建立一棵语法树,或者说为输入串寻找一个最左推导。LL(1)分析法是本章的学

相关文档
最新文档