编译原理期末考试及终稿.doc

得分 一. 填空题(每空2分,共20分) 1. 不同的编译程序关于数据空间的存储分配策略可能不同,但大部分编译中采用的方案有两种:静态存储分配方案和动态存储分配方案,而后者又分为栈式动态存储分配 和 堆式动态存储分配 。 2. 规范规约是最左规约。 3. 编译程序的工作过程一般划分为5个阶段:词法分析、语法分析、语义分析与中间代码生成,代码优化及目标代码生成 。另外还有表格管理和出错处理。 4.表达式x+y*z/(a+b)的后缀式为 xyz*ab=/+。 5.文法符号的属性有综合属性和 继承属性。 6.假设二位数组按行存放,而且每个元素占用一个存储单元,则数组a[1..15,1..20]某个元素a[i,j]的地址计算公式为 a+(i-1)*20+j-1 。 7.局部优化是局限于一个基本块范围内的一种优化。 得分 二. 选择题(1-6为单选题,7-8为多选题,每问2分,共20分) 1. 一个上下文无关文法G包括四个组成部分:一组终结符,一组非终结符,一个(C ),以及一组(B )。 A. 字符串B. 产生式C. 开始符号D. 文法 2.程序的基本块是指( D)。 A. 一个子程序B. 一个仅有一个入口和一个出口的语句 C. 一个没有嵌套的程序段 D. 一组顺序执行的程序段,仅有一个入口和一个出口 3. 高级语言编译程序常用的语法分析方法中,递归下降分析

文档评论(0)

1亿VIP精品文档

相关文档