全套编译原理复习与期末必考试题介绍.docVIP

全套编译原理复习与期末必考试题介绍.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一章: 1.编译程序的步骤和任务: 词法分析:从左到右一个字符一个字符地读入源程序,对构成源程序的字符流进行扫描和分解,从而识别出一个个单词。 语法分析:是在词法分析基础上将单词序列分解成各类语法短语(比如程序、语句、表达式等),通过语法分析确定整个输入串是否构成一个语法上正确的程序。 语义分析:是审查源程序有无语义错误,为代码生成阶段收集类型信息。 中间代码产生:将源程序变成一种易于翻译成目标代码的内部表示形式。 代码优化:对前阶段生成的中间代码进行变换或改造,使生成的目标代码更为高效 目标代码生成:把中间代码变换成特定机器上的绝对指令代码或可重定位的指令代码或汇编指令代码。 前端和后端的概念,试问前端通常包括那些阶段,后端包括那些阶段? 答:前端只依赖于源语言,与目标机无关。编译程序的前端通常包括词法分析程序、语法 分析程序、语义分析程序、中间代码生成程序及相关的表格管理程序和出错处理程序。后端 是指编译器中依赖于目标机器的部分,只与中间代码有关。通常包括目标代码生成程序、代 码优化程序以及相关的表格管理程序和出错处理程序。 遍(PASS):对输入文件(源程序或其等价的中间语言程序)从头到尾扫视,完成预定处理 的过程。 一个多遍的编译程序较之一遍的编译程序可能少占内存,逻辑结构可能清晰些,但效率相 对可能差点 3.程序的正确与否:结构上的语法规则,语义上的语义规则。 翻译程序:汇编,解释,编译。 4.解释程序及其与编译程序的比较 解释程序功能:源程序+初始数据=计算结果 解释与编译的区别: 工作模式:这是根本区别,编译把源程序翻译成目标代码,而解释直接得到计算结果,不生成目标代码。 存储区内容:编译方式翻译和执行分开,解释方式翻译和执行同时并允许修改源程序,因此二者存储组织不同。 效率:解释慢于编译,很多语言两种方式都有。 标识符:=表达式 第三章:文法和语言 1.文法的直观概念:一组判定规则。 在实践中,文法不包含多余产生式。 2.文法G定义为四元组(VT,VN ,S, P ),其中: VT是一个非空有穷终结符号集合; VN是一个非空有穷的非终结符号集合, 且VT∩VN=Φ; P是一个产生式的非空有穷集合(注意:产生式左部至少含有一个非终结符); S? VN ,称为开始符号,且S至少必须在某个产生式的左部出现一次 。 通常用V表示VN∪ VT,V称为文法G的字母表或字汇表. 3.句型、句子:设文法G,如果符号串x是从识别符号推导出来的,即S→x,x∈V*,则称x是一个句型。仅含终结符号的句型是一个句子。 4.语言:语言 L(G)是由文法G产生的所有句子所组成的集合。 5文法的类型:逐渐对产生式施加限制 四种类型:0型,1型,2型,3型 0型:G=(VT,VN,S,P),规则形式 : b?a a,?b (VTèVN)*, a中至少有一个非终结符 1型(上下文有关) :?b?£?a?,仅S- e除外 规则形式 : a A b ? a g bA ?VN, a ,g, b ? (VTèVN)*, ge1 2型(上下文无关):规则形式 : Ab? A ?VN,b ? (VTèVN)* 3型正规文法(右线性): A? aB 或 A ? a A,B ?VN (左线性) A? Ba 或 A ? a a ?VTè{e} 6.最左(最右)推导 在推导的任何一步αT β,其中α、β是句型,都是对α中的最左(右)非终结符 进行替换 规范推导:即最右推导。规范句型:由规范推导所得的句型。 7.文法的二义性 如果一个文法存在某个句子对应两棵不同的语法树,或者说,若一个文法中存在某个句子,它有两个不同的最左(最右)推导,则说这个文法是二义的. 如果产生上下文无关语言的每一个文法都是二义的,则说此语言是先天二义的。 8.自上而下的分析方法: 自上而下分析法,是从文法开始符号出发,反复使用各种产生式,逐步进行推导,直至推导出输入符号串。 过程:自上而下方法是从文法识别符号开始,将它作为语法树的根,向下逐步建立语法树,使语法树的末端结点符号串正好是输入符号串。 关键问题:假定要被代换的最左非终结符号是A,且有n条产生式:A ? a1|a2|…|an,那么如何确定用哪个产生式右部去替代A? 9.自下而上的分析方法: 自下而上分析法,是从输入符号串开始,逐步进行归约,直至归约到文法的开始符号。 过程:自下而上方法是从输入符号串开始,以它作为语法树的末端结点,自底向上地构造语法树,使语法树的根结点正好是文法的开始符号。 关键问题:因为

文档评论(0)

1112111 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档