(图片大小可自由调整)
2025年大学试题(计算机科学)-编译原理考试近5年真题荟萃附答案
第I卷
一.参考题库(共80题)
1.通常一个编译程序中,不仅包含词法分析,语法分析,语义分析,中间代码生成,代码优化,目标代码生成等六个部分,还应包括()。
A、模拟执行器
B、解释器
C、表格处理和出错处理
D、符号执行器
2.对下列错误信息,请指出可能是编译的哪个阶段(词法分析、语法分析、语义分析、代码生成)报告的。 (1)else没有匹配的if (2)数组下标越界 (3)使用的函数没有定义 (4)在数中出现非数字字符
3.()和代码优化部分不是每个编译程序都必需的。?
A、语法分析
B、中间代码生成
C、词法分析
D、目标代码生成
4.削减运算强度破坏了临时变量在一基本块内仅被定义一次的特性。
5.中间代码生成时所以据的是()
A、语法规则
B、词法规则
C、语义规则
D、等价变换规则
6.使用间接三元式表示法的主要目的()
A、便于优化处理
B、便于表的修改
C、节省存储空间
D、生成中间代码更容易
7.所有的编译程序都需要生成中间代码。
8.编译程序的工作分为那几个阶段?
9.语法分析基于()文法进行,即识别的是该类文法的句子。语法分析的有效工具是()。
10.编译程序首先要识别出源程序中每个(),然后再分析每个()并翻译其意义。
11.出口语句是一种结构化的方式跳出循环而设置的语句,它的作用是引起外层循环的终止。
12.一个上下文无关文法?G?包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组()。
A、句子
B、句型
C、单词
D、产生式
13.简要说明语义分析的基本功能。
14.某个语言,它能用正规表达式表示,但是它不能使用任何正规文法表示,这个语言必然是()
A、1型文法所对应的语言
B、含有二义的语言
C、既含有左递归又含有右递归
D、不存在的语言
15.指出哪些串是自动机可接受的?()
A、yyy
B、xx
C、yyyxy
D、yxxy
E、yx
16.编译程序绝大多数时间花在()上。
A、出错处理
B、词法分析
C、目标代码生成
D、管理表格
17.扫描器所完成的任务是从字符串形式的源程序中识别出一个个具有独立含义的最小语法单位即()
A、字符
B、单词
C、句子
D、句型
18.叙述由下列正规式描述的语言
19.一个LR(1)项目可以看成()两个部分组成。
A、心
B、向前搜索符集合
C、分析表
D、分析函数
20.一个LR分析器由3个部分组成,其中分析表或分析函数,也可以称为驱动程序。
21.()是一种典型的解释型语言。
A、BASIC
B、C
C、FORTRAN
D、PASCAL
22.词法分析器是用于做什么的?
23.设有表达式a*b-c,将其中a*b识别为表达式的编译阶段是什么()
A、词法分析
B、语法分析
C、语义分析
D、代码生成
24.如果在文法G中存在一个句子,当其满足下列条件()之一时,则称该文法是二义文法。
A、其最左推导和最右推导相同
B、该句子有两个不同的最左推导
C、该句子有两个不同的最右推导
D、该句子有两棵不同的语法树
E、该句子对应的语法树唯一
25.语法分析器则可以发现源程序中的()
A、语义错误
B、语法和语义错误
C、错误并校正
D、语法错误
26.编译程序绝大多数时间花在()上。?
A、出错处理
B、词法分析
C、目标代码生成
D、表格管理
27.任何文法的任何句子的句柄都是唯一的。
28.按照三种基本控制结构文法将下面的语句翻译成四元式序列:
29.单词的种别提供