2024年大学试题(计算机科学)-编译原理笔试参考题库含答案_第1页
2024年大学试题(计算机科学)-编译原理笔试参考题库含答案_第2页
2024年大学试题(计算机科学)-编译原理笔试参考题库含答案_第3页
2024年大学试题(计算机科学)-编译原理笔试参考题库含答案_第4页
2024年大学试题(计算机科学)-编译原理笔试参考题库含答案_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

“人人文库”水印下载源文件后可一键去除,请放心下载!(图片大小可任意调节)2024年大学试题(计算机科学)-编译原理笔试参考题库含答案“人人文库”水印下载源文件后可一键去除,请放心下载!第1卷一.参考题库(共75题)1.编译程序中错误处理的任务是对检查出的错误进行修改。2.局部优化是局限于一个什么范围内的一种优化?3.下面()不是自底向上的语法分析方法。A、SLR(1)B、LR(1)C、LL(k)D、算符优先符4.使用间接三元式表示法的主要目的()A、便于优化处理B、便于表的修改C、节省存储空间D、生成中间代码更容易5.局部优化是在()范围内进行的一种优化。6.在自底向上的语法分析方法中,分析的关键是()。A、寻找句柄B、寻找句型C、消除递归D、选择候选式7.面向对象语言的主要特征是()。A、封装性B、集成性C、继承性D、多态性8.自顶向下的语法分析方法的基本思想是:从文法的()开始,根据给定的输入串并按照文法的产生式一步一步的向下进行(),试图推导出文法的(),使之与给定的输入串()。9.已知文法G(S),S→a|∧|(T);T→T,S|S,写出句子((a,a),a)的规范归约过程及每一步的句柄。10.已知文法G[S]:S→(L)|a L→L,S|S为句子(a,(a,a))构造最左推导和最右推导。11.编译中的语义处理是指()两个功能。A、审查每个语法结构的静态语义B、生成程序的一种中间表示形式(中间代码),或者生成实际的目标代码C、分析栈D、向前搜索符集合12.词法分析作为单独的一遍来处理较好。13.数组元素的地址计算与数组的存储方式有关。14.栈式分配策略在下列哪些情况下行不通?()A、过程活动停止后,局部名字的值还必须维持B、被调用者的活动比调用者的活动活得更长,此时活动树不能正确描绘程序的控制流C、不遵守栈式规则的有Pascal语言和C语言的动态变量D、Java禁止程序员自己释放空间15.一个LR分析器由()组成。A、驱动程序B、分析函数C、分析栈D、向前搜索符集合16.()不是编译程序的组成部分。A、词法分析程序B、代码生成程序C、设备管理程序D、语法分析程序17.一个文法能用有穷多个规则描述无穷的符号串集合(语言)是因为文法中存在有()定义的规则。18.一个文法所描述的语言是()A、唯一的B、不唯一的C、可能唯一,好可能不唯一D、都不对19.堆栈区用以存放编译时能确定所占用空间的数据。20.LR(1)文法都是()。A、无二义性且无左递归B、可能有二义性但无左递归C、无二义性但可能是左递归D、可以既有二义性又有左递归21.编译过程中可进行的优化如何分类?22.编译程序与具体的机器有关,与具体的语言无关。23.LR(0)分析法是一种规范规约法。24.下面哪个文法具有二义性()。A、A→AAB、E→E+TC、E→(E)D、E→a25.编译程序必须完成的工作有()。 (1)词法分析 (2)语法分析 (3)语义分析 (4)目标代码生成 (5)中间代码生成 (6)代码优化A、(1)(2)(3)(4)B、(1)(2)(3)(4)(5)C、(1)(2)(3)(4)(5)(6)D、(1)(2)(3)(4)(6)26.自顶向下的语法分析方法的基本思想是什么?27.错误“变量类型声明不一致”将在()阶段发现。A、词法分析B、语法分析C、语义分析D、目标代码生成28.逆波兰记号是最简单的一种中间代码表示形式。29.编译程序能改正源程序所有错误。30.何谓代码优化?进行优化所需要的基础是什么?31.一个名字的属性包括()和()。32.计算机执行用高级语言编写的程序主要有两种途径:()和()。33.程序语言的单词符号一般可以分为()。A、基本字B、标识符C、常量D、算符E、界符34.逆波兰表示法表示表达式时无须使用括号。35.编译程序生成的目标程序是不是一定是机器语言的程序?36.翻译方案的设计原则37.一个算符优先文法可能不存在算符优先函数与之对应。38.()文法不是LL(1)的。A、递归B、右递归C、2型D、含有公共左因子39.间接三元式表示法的优点为()。  A、采用间接码表,便于优化处理B、节省存储空间,不便于表的修改C、便于优化处理,节省存储空间D、节省存储空间,不便于优化处理40.常用的参数传递方式有哪三种?41.两个正规集相等的必要条件是他们对应的正规式等价。42.规范归约和规范推导是互逆的两个过程。43.下面不属于LL(1)分析器的组成部分是()A、LL(1)总控程序B、LL(1)分析表C、分析栈D、源程序串44.词法分析器作为独立的阶段使整个编译程序结构更加简洁、明确,因此,()A、词法分析器应作为独立的一遍B、词法分析器作为子程序较好C、词法分析器分解为多个过程,由语法分析器选择使用D、词法分析器并不作为一个独立的阶段45.语言程序的测试工具有()A、静态分析器B、动态测试器C、调试工具D、格式化工具46.已知文法G(E),E→T|E+T;T→F|T *F;F→(E)|i。 (1)给出句型(T *F+i)的最右推导; (2)给出句型(T *F+i)的短语、素短语。47.当一个过程调用其他过程时,调用过程和被调用过程之间的通信只能由非局部变量传递。48.下面哪个不是单词的描述工具?()A、正规式B、有穷自动机C、下推自动机D、正规文法49.设文法G(S):S→(L)|aS|a;L→L,S|S (1)消除左递归和回溯; (2)计算每个非终结符的FIRST和FOLLOW。50.文法S→aaS|abc定义的语言是()。A、{a2kbcB、{akbcC、{a2k-1bcD、{akakbc51.有人认为编译程序的五个组成部分缺一不可,这种看法正确吗?52.语法树和推导树不一样。53.编译过程中,比较常见的中间语言有()。A、波兰表示B、逆波兰表示C、三元式D、四元式54.编译程序大致有哪几种开发技术?55.描述词法分析的有效工具是()。A、正规式B、上下文无关文法C、语言的语义规则D、有限自动机56.有限自动机有哪几部分组成?57.简述代码优化的目的和意义。58.一个上下文无关文法G包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组()。A、句子B、句型C、单词D、产生式59.LR分析方法是已知的最一般的无回溯的移进-归约方法。60.哪个不是编译系统的组成部分()A、词法分析器B、代码生成器C、设备管理程序D、语法分析器61.用高级语言编写的程序经编译后产生的程序叫()。A、源程序B、目标程序C、连接程序D、解释程序62.编译程序诸阶段的工作往往是()。A、顺序B、并行C、成批D、穿插63.每个文法都能改写为LL(1)文法。64.甲机上的某编译程序在乙机上能直接使用的必要条件是甲机和乙机的操作系统功能完全相同。65.数据表示的意义是()A、它是计算机系统能表示的数据类型B、它是计算机硬件能直接识别的数据类型C、它是计算机硬件能直接识别的数据结构D、它是数据结构的一个子集66.执行词法分析的程序叫做扫描程序。67.程序所需的数据空间在程序运行前就可确定,称为()管理技术。A、动态存储B、栈式存储C、静态存储D、堆式存储68.简述自下而上的分析方法。69.语法制导翻译只适用于自下而上的语法分析方法。70.通常把编译过程分为分析前端与综合后端两大阶段。词法、语法和语义分析是对源程序的(),中间代码生成、代码优化与目标代码的生成则是对源程序的()。71.如果文法G是无二义的,则它的任何句子()A、最左推导和最右推导对应的语法树必定相同B、最左推导和最右推导对应的语法树可能不同C、最左推导和最右推导必定相同D、可能存在两个不同的最左推导,但它们对应的语法树相同72.在编译时安排所有数据对象的存储单元的分配策略属于()。A、静态分配策略B、栈式分配策略C、堆分配策略D、动态分配策略73.对任意一个右线性文法G,都存在一个DFAM,满足L(G)=L(M)。74.文法分为四种类型,即0型、1型、2型、3型。其中2型文法是()。A、短语文法B、正则文法C、上下文有关文法D、上下文无关文法75.简要说明语义分析的基本功能。第2卷一.参考题库(共75题)1.解释程序处理语言时,大多数采用的是()方法。 A、源程序命令被逐个直接解释执行B、先将源程序转化为中间代码,再解释执行C、先将源程序解释转化为目标程序,再执行D、以上方法都可以2.在编译方法中,动态存储分配的含义是()。A、在运行阶段对源程序中的量进行分配B、在编译阶段对源程序中的量进行分配C、以上都不是3.产生式是用于定义词法成分的一种书写规则。4.一个LR分析器包括两部分:一个总控程序和()。5.关于堆式分配,下面说法正确地是()。A、属于动态分配B、属于静态分配C、适用于可递归调用、具有分程序结构的语言D、适用于允许为变量动态申请内存空间的语言6.词法分析的主要任务是什么?7.一个句型中的最左简单短语称为该句型的()。8.编译程序首先要识别出源程序中每个(),然后再分析每个()并翻译其意义。9.()是指源程序中不符合语义规则的错误,这些错误一般在语义分析时能检测出来。A、语义错误B、语法错误C、短语错误D、短句错误10.文法分为四种类型,即0型、1型、2型、3型。其中0型文法是()。A、短语文法B、正则文法C、上下文有关文法D、上下文无关文法11.已知文法G[S]为:S->a|^|(T)T->T,S|S (1)计算G[S]的FIRSTVT和LASTVT。 (2)构造G[S]的算符优先关系表并说明G[S]是否未算符优先文法。 (3)计算G[S]的优先函数。 (4)给出输入串(a,a)#的算符优先分析过程。12.文法符号的属性有综合属性和()。13.若一个文法是递归的,则它所产生的语言的句子是可枚举的吗?14.程序语言的语言处理程序是一种应用软件。15.词法分析器的输出是()。A、单词符号B、二元式C、三元式D、四元式16.为什么在代码生成时要考虑充分利用寄存器?17.变量应当()A、持有左值B、持有右值C、既持有左值又持有右值D、既不持有左值也不持有右值18.编译程序是一种()A、汇编程序B、翻译程序C、解释程序D、目标程序19.下面哪些语言特征会影响存储分配策略?()A、过程能否递归B、当控制从过程的活动返回时,局部变量的值是否要保留C、过程能否访问非局部变量D、过程调用的参数传递方式20.语法错误校正的目的是为了把错误改正过来。21.对下面的文法G://22.以下中间代码的表示形式中,()更便于优化。A、三元式B、四元式C、抽象语法树D、后缀式23.递归下降法允许任一非终极符是直接左递归的。24.在程序中标识符的出现仅为使用性的。25.编译程序是对高级语言程序的解释执行。26.设有文法G[S]:S→Ap|Bq,A→a|cA,B→b|dB,则FIRST(Ap)为()A、{p,q}B、{b,d}C、{a,c}D、其他27.如果在文法G中存在一个句子,当其满足下列条件()之一时,则称该文法是二义文法。A、其最左推导和最右推导相同B、该句子有两个不同的最左推导C、该句子有两个不同的最右推导D、该句子有两棵不同的语法树E、该句子对应的语法树唯一28.在通常的语法分析方法中,()特别适用于表达式的分析。A、算符优先分析法B、LR分析法C、递归下降分析法D、LL(1)分析法29.若过程p第k次被调用,则p的DISPLAY表中就有k+1个元素。30.算符优先关系表不一定存在对应的优先函数。31.为实现“执行K”与“分析k+1”的重叠,必须()。A、操作数和指令分别存放在两个独立编址的存储器中B、采用多体交叉主存结构,且不共存于一个体中C、有独立的指令分析部件和指令执行部件D、增设指令缓冲寄存器32.一个LL(l)文法一定是无二义的。33.语法分析的方法大致可分为哪两类?()A、算符优先分析法B、自上而下分析法C、自下而上分析法D、LL(1)分析法34.编译原理是对()。A、机器语言的执行B、汇编语言的翻译C、高级语言的翻译D、高级语言程序的解释执行35.数组的内情向量中肯定不含有数组的()的信息。A、维数B、类型C、维上下界D、各维的界差36.文法的二义性和语言的二义性是两个不同的概念。37.递归下降法不允许任一非终极符是直接()递归的。38.语法分析的任务是什么?39.从功能上说,程序语言的语句大体可分为()语句和()语句两大类。40.继承属性值的计算依赖于分析树中它的()的属性值。A、父结点B、子结点C、兄弟结点D、父结点与子结点41.一个典型的编译程序通常由哪些部分组成?各部分的主要功能是什么?42.把汇编语言程序翻译成机器可执行的目标程序的工作是由()完成的。A、编译器B、汇编器C、解释器D、预处理器43.文法 G 产生的()的全体是该文法描述的语言。A、句型B、终结符集C、非终结符集D、句子44.常用的两种动态存贮分配办法是()。A、栈式动态分配B、顺序动态分配C、随机动态分配D、堆式动态分配45.说明下面文法G[S]是二义性文法:S→SaS|SbS|cSd|eS|f46.一个句型中的最左()称为该句型的句柄。A、短语B、简单短语C、素短语D、终结符号47.代码优化的主要目标是什么?48.同心集的合并有可能产生新的“移进”/“归约”冲突。49.LR(k)分析是一种自底向上的分析法,它是以下面哪个作为每一步规约的对象?()A、最右直接短语B、最左直接短语C、句柄D、最左素短语50.乔姆斯基把文法分为四种类型,即0型、1型、2型、3型。其中2型文法叫什么?51.所有的编译程序都需要生成中间代码。52.每个非终结符产生的终结符号串都是该语言的子集。53.过程调用的实质是把程序控制转移到子程序(过程段)。54.语法分析的常用方法是()。A、自顶向下B、自底向上C、自左向右D、自右向左55.写一文法,使其语言是偶正整数的集合,要求:(1)允许0打头;(2)不允许0打头。56.基本块内的优化为()。A、代码外提,删除归纳变量B、删除多余运算,删除无用赋值C、强度削弱,代码外提D、循环展开,循环合并57.文法G的一个句子对应于多个推导,则G是二义的。58.在属性文法中,综合属性与继承属性是如何传递信息的?59.把一个高级语言程序翻译成机器可执行的目标程序的工作由下列程序之一完成()。A、汇编程序B、解释程序C、编译程序D、预处理程序60.削减运算强度破坏了临时变量在一基本块内仅被定义一次的特性。61.一个上下文无关文法消除了左递归,提取了左公共因子后是满足LL(1)文法的()A、必要条件B、充分必要条件62.同心集的合并有可能产生“归约/归约”冲突。63.构造LR分析器的任务就是产生LR分析表。64.设R和S分别是字母表∑上的正规式,则有L(R|S)=L(R)∪L(S)65.通常一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目标代码生成等五个部分,还应包括()。A、模拟执行器B、解释器C、表格处理和出错处理D、符号执行器66.不同的编译程序关于数据空间的存储分配策略可能不同,但大部分编译中采用的方案有两种:静态存储分配方案和动态存储分配方案,而后者又分为()和()。67.静态分析器是在不运行程序的情况下对源程序进行静态地分析,以发现程序中潜在的错误或者异常。68.LR分析法在自左至右扫描输入串时就能发现错误,但不能准确地指出出错地点。69.最常用的代码优化技术有哪些?70.源程序到目标程序的变换是等价变换,即两者结构不同,但语义是一致的。71.S属性定义属于L属性定义。72.产生式是用于定义()的一种书写规则。73.一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组()。A、句子B、句型C、单词D、产生式74.编译程序中语法分析器接收以什么为单位的输入?75.编译程序的实现应考虑的问题有哪些?第1卷参考答案一.参考题库1.参考答案:错误2.参考答案: 是局限于一个基本块范围内的一种优化。3.参考答案:C4.参考答案:A5.参考答案:基本块6.参考答案:A7.参考答案:A,C,D8.参考答案:开始符号;直接推导;句子;匹配9.参考答案: 10.参考答案: 11.参考答案:A,B12.参考答案:错误13.参考答案:正确14.参考答案:A,B,C,D15.参考答案:A,B,C16.参考答案:C17.参考答案:递归18.参考答案:A19.参考答案:错误20.参考答案:C21.参考答案: 依据优化所涉及的程序范围,可以分为:局部优化、循环优化和全局优化。22.参考答案:错误23.参考答案:正确24.参考答案:A25.参考答案:A26.参考答案: 从文法的开始符号开始,根据给定的输入串并按照文法的产生式一步一步的向下进行直接推导,试图推导出文法的句子,使之与给定的输入串匹配。27.参考答案:C28.参考答案:正确29.参考答案:错误30.参考答案: 对代码进行等价变换,使得变换后的代码运行结果与变换前代码运行结果相同,而运行速度加快或占用存储空间减少,或两者都有。优化所需要的基础是在中间代码生成之后或目标代码生成之后。31.参考答案:类型;作用域32.参考答案:解释;编译33.参考答案:A,B,C,D,E34.参考答案:正确35.参考答案: 不一定是机器语言的程序。36.参考答案: 1)产生式右部符号的继承属性必须在先于这个符号的动作中计算 2)一个动作不能引用该动作右边符号的综合属性。 3)左部非终结符的综合属性只能在它所引用的所有属性都计算完后才能计算。计算该属性的动作通常放在产生式右部的末端。 4)只有综合属性的情况最简单。37.参考答案:正确38.参考答案:D39.参考答案:A40.参考答案: 常见的参数传递方式有传地址、传值和传名三种方式。41.参考答案:错误42.参考答案:正确43.参考答案:D44.参考答案:B45.参考答案:A,B46.参考答案: 47.参考答案:错误48.参考答案:C49.参考答案: 50.参考答案:C51.参考答案: 编译程序的5个阶段中,词法分析,语法分析,语义分析和代码生成生成是必须完成的。而中间代码生成和代码优化并不是必不可少的。优化的目的是为了提高目标程序的质量,没有这一部分工作,仍然能够得到目标代码。52.参考答案:错误53.参考答案:B,C,D54.参考答案: (1)自编译 (2)交叉编译 (3)自展 (4)移植55.参考答案:A,D56.参考答案: 有限自动机是一个五元组,由非空的有限状态集、输入字母表、状态转换函数、唯一的起始状态和接受状态集组成。57.参考答案: 代码优化是尽量生成“好”的代码的编译阶段。也就是要对程序代码进行一种等价变换,在保证变换前后代码执行结果相同的前提下,尽量使目标程序运行时所需要的时间短,同时所占用的存储空间少。58.参考答案:D59.参考答案:正确60.参考答案:C61.参考答案:B62.参考答案:D63.参考答案:错误64.参考答案:错误65.参考答案:B66.参考答案:正确67.参考答案:C68.参考答案: 所谓自下而上分析法就是从输入串开始,逐步进行“归约”,直至归约到文法的开始符号;或者说从语法树的末端开始,步步向上“归约”,直到根节点。69.参考答案:错误70.参考答案:分析;综合71.参考答案:A72.参考答案:A,B,C,D73.参考答案:正确74.参考答案:D75.参考答案: 语义分析的基本功能包括:确定类型、类型检查、语义处理和某些静态语义检查。第2卷参考答案一.参考题库1.参考答案:B2.参考答案:A3.参考答案:错误4.参考答案:一张分析表5.参考答案:A,D6.参考答案: 词法分析器的任务是对构成源程序的字符串从左到右逐个字符逐个字符地进行扫描,依次把它们识别为一个一个具有独立意义的单词,并确定其属性,再转换为长度统一的属性字并输出。7.参考答案:句柄8.参考答案:单词;句子9.参考答案:A10.参考答案:A11.参考答案: 12.参考答案:继承属性13.参考答案: 它所产生的语言的句子不是可枚举的,而是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论