级编译原理A卷

发布 2024-01-14 11:15:12 阅读 9534

哈尔滨工程大学本科生考试试卷。

2008-2009 年二学期)

课程编号:06020060 课程名称: 编译原理 (a卷)一、选择(共20分,每空2分)

1.编译器各处理阶段的正确顺序是( )

a.词法分析、语法分析、语义分析、**生成;

b.语法分析、词法分析、语义分析、**生成;

c.语义分析,语法分析、词法分析,**生成;

d.以上都不对。

2.以下各个编译器模块除了( )外,都无需考虑目标机器的特性。

a. 语法分析 b. 词法分析

c. **生成 d. 语义分析。

3. 表示“由a或b组成的含有偶数个b的字符串”的正则表达式是( )a.a*ba*ba* b. (a*ba*ba*)*c.(ababd. 以上都不对。

4. 编译器中语法分析的输入和输出分别是( )a.字符串、记号串 b.记号串、注释树。

c.记号串、语法树 d.语法树、注释树。

5. 下列对完全静态存储分配的含义描述错误的是( )a.每个过程只有一个活动记录;

b.每个变量都有一个固定的存储地址;

c.没有指针和动态分配;

d.允许递归调用。

6. 后缀表示的特点是:()

a.操作数的顺序与原来相同;

b.操作符的顺序就是计算发生的顺序;

c.后缀表示中无需括号;

d.以上都是。

7. 以下不是有限自动机的组成元素的是()a.开始状态b.结束状态。

c.正则表达式d.状态转换函数。

8.在文法中可能引起二义性的原因有:(

a.运算的优先级 b. 运算的结合性。

c.else的悬挂问题 d. 以上都有可能。

9.语法分析的方法大致可分为:(

a.自左向右和自右向左。

b.自顶向下和自底向上。

c.递归下降方法和ll(1)分析方法。

d.生成和匹配。

10. 过程信息表(过程活动记录)中至少应该包括有。

过程名。过程的静态层次。

过程的入口地址。

过程首部在源程序中的行号。

有关过程参数的信息。

ab. cd.

二、简答题(每题5分,共25分):

1. 什么是编译器?请简述编译器的功能及其输入输出。

2. 什么是二义性文法?请说明消除二义性的方法。

3. 请写出下面各个字符串的正则表达式。

a) 所有整数的数字串(包括负数)

b) 字符串中至多含有一个a的大写字母串。

4. 请写出a:=3+(5-a/b)的后缀表示和三元组表示。

5. 请简述有限自动机的组成元素并解释dfa和nfa的区别。

三、(15分)已知正则表达式(ab)*(a|b)1.构造该正则表达式所对应的nfa;

2.由nfa构造dfa;

3.对dfa进行最小化。

四、(15分)设有文法g[s]:

s→ x s |

x→ a s b | c

1.计算文法g[s]非终结符的first集合和follow集合;

2.若采用自顶向下分析方法,对此文法来说,在分析过程中能否避免二义性?为什么?

3.分析符号串aababb是否为此文法的句子。

五、(25分)已知文法g[a]为。

a→ (l)a | x)

l→ l,s | k

1.通过消除左递归和提取左因子(回溯),给出与g[a]等价的文法g’[a];

2.计算文法g’[a]非终结符的first集合和follow集合;

3.判断文法g’[a]是否为ll(1)文法;

4.如果文法g’[a]是ll(1)文法,构造g’[a]的分析表;

5.给出输入串(k,s,s)(x)的分析过程。

编译原理2019 B卷

一 简答题 第1题5分 题各6分,共17分 1 简述编译主要包括哪些过程及每一过程的主要工作?5分。2 如果去掉c语言中过程的递归调用特点 即 过程不允许递归调用 其它特点不变,请说明其运行时需要采用何种存储分配策略。3 已知文法g e e eit t t t f if f f e 请问该文法是否是...

2019春编译A卷

华南农业大学期末考试试卷 a卷 2012学年第2学期考试科目 编译原理 考试类型 闭卷 考试考试时间 120 分钟。学号姓名年级专业。一 简答题 本题共4小题,每小题5分,共20分 1 简述编译过程的5个阶段及各阶段的主要功能。2 简述语法制导翻译技术的基本思想。3 简述算符优先分析方法。4 含有优...

江西师大编译原理期末真题2019B卷

2012 2013学年第二学期期末考试试卷 b 一 选择题 共20分,每小题2分 1 用高级语言编写的程序经编译后产生的程序叫。a 源程序 b 目标程序 c 连接程序 d 解释程序。2 编译的两种形式是编译方式和解释方式,这两种方式最本质的区别在 a 编译方式速度快b 解释方式不产生目标 c 解释方...