20春《编译原理》作业2
试卷总分:100 得分:100
一、单选题 (共 1 道试题,共 5 分)
1.一个句型中的最左_____称为该句型的句柄。
A.终结符号
B.素短语
C.简单短语
D.短语
二、多选题 (共 2 道试题,共 10 分)
2.运行时的存储区常常划分为:( )
A.静态数据区
B.目标区
C.栈区
D.堆区
3.编译程序从逻辑结构上,一般由( )组成,此外编译程序还包括表格处理程序、出错处理程序。
A.语法分析程序
B.语义分析程序
C.词法分析程序
D.目标代码生成程序
E.代码优化程序
F.中间代码生成程序
三、判断题 (共 17 道试题,共 85 分)
4.“用高级语言书写的源程序都必须通过编译,产生目标代码后才能投入运行。”这种说法。( )
5.在解释方式下,解释程序将按照源程序中语句的动态顺序,逐句地进行分析解释,并立即予以执行。
6.一个有限状态自动机中,有且仅有一个唯一的终态。( )
7.题目见图片{图}
8.题目见图片{图}
9.递归下降分析法是自顶向下分析方法。( )
10.简单优先文法允许任意两个产生式具有相同右部。( )
11.自底而上语法分析方法的主要问题是候选式的选择。( )
12.全局优化是在整个程序范围内进行的优化。
13.栈式存储分配策略是指运行时每当进入一个过程,就在栈顶为该过程分配所需的数据空间,当一个过程工作完毕返回时,它在栈顶的数据空间也释放。
14.所谓循环就是程序中那些可能反复执行的代码序列。
15.仅考虑一个基本块,不能确定一个赋值是否真是无用的。( )
16.有些简单的编译程序在语法分析的同时产生目标指令代码。
17.一个语义子程序描述了一个文法所对应的翻译工作。( )
18.目标代码的优化是在目标代码生成以后进行的。
19.动态数组的存储空间在编译时就可完全确定。( )
20.当参数通过引用传递时,也称作传地址,或者引用调用。