软件学院编译原理试题1.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件学院编译原理试题1

北京工业大学 2009∽2010年度第1学期 软件学院【编译原理】考试卷(B) 考试形式: 一纸开卷 考试时间:2010年 月 日 学号 姓名 一 二 三 四 五 六 七 总分 分数 选择题(16分) 1、请从下列供选择的答案中选出与编译过程的各阶段对应的常用方法: (1)词法分析的常用方法有( ) (2)语法分析的常用方法有( ) (3)中间代码生成的常用方法有( ) (4)优化的常用方法有( ) 可选项有: (1) a.有穷自动机理论 b.图灵机 c.图论 d.无穷自动机理论 (2) a.自顶向下匹配 b.自底向上归约 c.回溯法 d.自顶向下匹配和自底向上归约 (3) a. LR方法 b.语法制导翻译方法 c.最优匹配法 d.递归法 (4) a.信息流分析法 b.语义分析法 c.数据流分析法 d.结构图 2、通常编译程序是把高级语言书写的源程序翻译为( (1) ),它包括词法分析、语法分析、 中间代码生成、代码优化、目标代码生成、符号表格管理和出错处理等部分。其中代码优化的目的是加快( (2) )的执行速度,符号表存取方法则影响( (3) )的效率。 可选项有: (1) a.BASIC语言程序 b.中间语言程序 c.另一种高级语言程序 d.等价的机器语言程序 (2)、(3)a.编译程序 b.目标程序 c.源程序 d.编译程序和目标程序 e.解释程序 3、设有文法 G[E]: E - E+E | E*E | (E) | i 在下述文法类中,文法G[E]属于( )。 (1)算符文法 (2)上下文无关文法 (3)正规文法 (4)二义文法 可选项有: a.(1)(2) b.(1)(2)(4) c.(2)(4) d.(1)(4) 自顶向下的语法分析(20分) 给定文法 G[S]: S → aSb | A A → bAc | bBc B → Ba | a 试消除文法的左递归、提取左因子,并判断改写后的文法是否为LL(1)文法?并说明理由。 自底向上的语法分析(20分) 试证明下面的文法G[S]是SLR(1)但不是LR(0)的: G[S]: S → X X → Xb|bYa Y → aXc|a|aXb (7分)试证明(说明)下面的文法G[S]是二义的: G[S]: S → iSeS|iS|i 考虑句子iiiei,存在如下两个最右推导: S = iSeS = iSei = iiSei = iiiei S = iS = iiSeS = iiSei = iiiei (7分)写出能产生字母表{a,b}上的不含两个相邻的a,且不含两个相邻的b的全体符号串的有限状态自动机。 (16分)设文法 G[E]: E → RP|P P → (E)|i R → RP+| RP* |P+|P* 画出句子i+i*(i+i)的语法分析树,给出其最右推导和最左归约,并指出它的句柄。 七、属性文法(14分) 如图所示为一简单的台式计算器的语法制导定义(n为换行符) 产生式 语义规则 L- E n Print(E.val) E- E + T E.val:=E.val+T.val E- T E.val:=T.val T- T * F T.val:=T.val×F.val T- F T.val:=F.val F- ( E ) F.val:=E.val F- digit F.val:=digit.lexval 1、该语法制导定义中仅使用了何种属性定义?仅使用该种属性的语法制导定义又称为何种属性定义? 2、写出句子(17 + 3)+ 10 * 2n的带注释分析树、或属性计算过程。 3、给出处理该句子的结果(Print输出结果)。 第 3 页 共 5 页

文档评论(0)

80019pp + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档