江南大学2016年上半年 编译原理第3阶段测试题

[复制链接]
发表于 2016-5-23 21:03:08 | 显示全部楼层 |阅读模式
江南大学现代远程教育 第三阶段测试卷
考试科目:《编译原理第8章至第10章(总分100分) 时间:90分钟
一、选择与填充30
1. 下列哪种不是代码生成技术?(      )
A. 基于多元式         B. 基于树结构        C. 基于LR(0)          D. 基于DAG
2. 基本块内的优化为(         )。
A.代码外提,删除归纳变量                 B.删除多余运算,删除无用赋值      
C.强度削弱,代码外提                      D.循环展开,循环合并
3. 表达式-a+b*(-c+d)的逆波兰式是(      )。
A. ab+-cd+-*                         B. a-b+c-d+*
C. a-b+c-d+*                         D. a-bc-d+*+
4. 设A→X1X2…Xi…XN是属性文法AG中的任一产生式,如果它满足下面条件,则称AG
   为L-属性文法:
   Xi的_________________只依赖于A的__________________和X1,X2…,Xi-1的属性;
   A的__________________只依赖于A的__________________和产生式右部符号的属性。
5.下面哪种不是中间代码?(       )
A. 三元式           B. 四元式              C. 二元式           D. 后缀式
6.在使用高级语言编程时,可通过编译程序发现源程序的全部_________错误和部分_______错误。
二、何谓优化?按所涉及的程序范围可分为哪几级优化?(15)
三、设当前层为L,可用偏移量Offset值为101,且有下面程序,写出本层符号表
    的内容。(15)
    consti=100;
   type  ar=array [1..20] of real;
   var x:real;y:integer;a1,a2:ar;
四、按照三种基本控制结构文法将下面的语句翻译成四元式序列:(15)
while (A<C ∧ B<D)
{
if (A ≥ 1) C=C+1;
else while (A ≤ D)
A=A+2;
}。
五、某语言的拓广文法G为: (25)
(1) S → Db|B
  (2) D → d|ε
  (3) B → Ba|ε
证明G不是LR(0)文法而是SLR(1)文法,请给出SLR(1)分析表。

发表于 2016-6-2 15:14:58 | 显示全部楼层
无忧答案太牛了,下载了几个全满分,哈哈!
快速回复 返回顶部 返回列表