编译原理自动机这道题为什么选d?

编译原理(第2版)陈意云+张昱编著课后答案

[版权声明] 本站所有资料由用户提供并上传,若内容存在侵权,请联系邮箱。资料中的图片、字体、音乐等需版权方额外授权,请谨慎使用。网站中党政主题相关内容(国旗、国徽、党徽)仅限个人学习分享使用,禁止广告使用和商用。

1.1何谓源程序、目标程序、翻译程序、编译程序和解释程序?它们之间可能有何种关系?

1.2一个典型的编译系统通常由哪些部分组成?各部分的主要功能是什么?

1.3选择一种你所熟悉的程序设计语言,试列出此语言中的全部关键字,并通过上机使用该语言以判明这些关键字是否为保留字。

1.4选取一种你所熟悉的语言,试对它进行分析,以找出此语言中的括号、关键字END以及逗号有多少种不同的用途。

1.5试用你常用的一种高级语言编写一短小的程序,上机进行编译和运行,记录下操作步骤和输出信息,如果可能,请卸出中间代码和目标代码。

1.解:源程序是指以某种程序设计语言所编写的程序。目标程序是指编译程序(或解释程序)将

源程序处理加工而得的另一种语言(目标语言)的程序。翻译程序是将某种语言翻译成另一种语言的程序的统称。编译程序与解释程序均为翻译程序,但二者工作方法不同。解释程序的特点是并不先将高级语言程序全部翻译成机器代码,而是每读入一条高级语言程序语句,就用解释程序将其翻译成一段机器指令并执行之,然后再读入下一条语句继续进行解释、执行,如此反复。即边解释边执行,翻译所得的指令序列并不保存。编译程序的特点是先将高级语言程序翻译成机器语言程序,将其保存到指定的空间中,在用户需要时再执行之。即先翻译、后执行。

2.解:一般说来,编译程序主要由词法分析程序、语法分析程序、语义分析程序、中间代码生成

程序、代码优化程序、目标代码生成程序、信息表管理程序、错误检查处理程序组成。

4.解:C语言中括号有三种:{},[],()。其中,{}用于语句括号;[]用于数组;()用于函数(定

义与调用)及表达式运算(改变运算顺序)。C语言中无END关键字。逗号在C语言中被视为分隔符和运算符,作为优先级最低的运算符,运算结果为逗号表达式最右侧子表达式的值(如:(a,b,c,d)的值为d)。

第二章前后文无关文法和语言

(1) 字母表A1上长度为2的符号串有多少个?

(3) 列出集合A1 (A1∪A2)*中的全部长度不大于3的符号串。

《西安交通大学16年9月课程考试《编译原理》作业考核试题答案》由会员分享,可在线阅读,更多相关《西安交通大学16年9月课程考试《编译原理》作业考核试题答案(8页珍藏版)》请在人人文库网上搜索。

1、西安交通大学16年9月课程考试编译原理作业考核试题1:Chomsky把文法分成四种类型,其中,()也称正规文法A:0型B:1型C:2型D:3型正确答案:D2:()语言具有这样的特点:没有分程序结构;过程定义不允许嵌套;允许过程嵌套定义。A:FortranB:PascalC:CD:都不正确答案:C3:高级语言编译程序常用的语法分析方法中,递归下降分析法属于()分析法。A:自左至右B:自顶向下C:自底向上D:自右向左正确答案:B4:构造编译程序应掌握()。A:源程序B:目标语言C:编译方法D:以上三项都是正确答案:D5:编译程序绝大多数时间花在()上。A:出错处理B:词法分析C:目标代码生成D:管

2、理表正确答案:D6:在自顶向下的语法分析方法中,分析的关键是()A:寻找句柄B:寻找句型C:消除递归D:选择候选式正确答案:C7:两个有穷自动机等价是指它们的()。A:状态数相等B:有向弧数相等C:所识别的语言相等D:状态数和有向弧数相等正确答案:C8:把汇编语言程序翻译成机器可执行的目标程序的工作是由()完成的。A:编译器B:汇编器C:解释器D:预处理器正确答案:B9:编译原理各阶段工作都涉及()A:词法分析B:表格管理C:语法分析D:语义分析正确答案:B10:Pascal中过程说明的局部变量地址分配在()。A:调用者的数据区中B:被调用者的数据区中C:主程序的数据区中D:公共数据区中正确答

3、案:B11:按逻辑上划分,编译程序第三步工作是()A:语义分析B:词法分析C:语法分析D:代码生成正确答案:A12:一个()指明了在分析过程中的某时刻所能看到产生式多大一部分。A:活前缀B:前缀C:项目D:项目集正确答案:C13:()是一种典型的解释型语言。A:BASICB:CC:FORTRAND:PASCAL正确答案:A14:()这样一些语言,它们能被确定的有穷自动机识别,但不能用正则表达式表示。A:存在B:不存在C:无法判定是否存在D:以上都不正确正确答案:B15:现代多数实用编译程序所产生的目标代码都是一种可重定位的指令代码,在运行前必须借助于一个()把各个目标模块,包括系统提供的库模块

4、连接在一起,确定程序变量或常数在主存中的位置,装入内存中制定的起始地址,使之成为一个可运行的绝对指令代码的程序。A:重定位程序B:解释程序C:连接装配程序D:诊断程序正确答案:C16:程序基本块是指()。A:一个子程序B:一个仅有一个入口和一个出口的语句C:一个没有嵌套的程序段D:一组顺序执行的程序段,仅有一个入口和一个出口正确答案:D17:与(a|b)*(a|b)等价的正规式是()。A:a*|b*B:(ab)*(a|b)C:(a|b)(a|b)*D:(a|b)*正确答案:C18:通常一个编译程序中,不仅包含词法分析,语法分析,语义分析,中间代码生成,代码优化,目标代码生成等六个部分,还应包括

5、()。A:模拟执行器B:解释器C:表格处理和出错处理D:符号执行器正确答案:C19:正则表达式R1和R2等价是指()A:R1和R2都是定义在一个字母表上的正则表达式B:R1和R2中使用的运算符相同C:R1和R2代表同一正则集D:R1和R2代表不同正则集正确答案:C20:程序语言的单词符号一般可以分为5种,下面()不需要超前搜索。A:关键字B:标识符C:常数D:算符和界符正确答案:D21:词法分析器的输入是()。A:单词符号串B:源程序C:语法单位D:目标程序正确答案:B22:词法分析器的输出结果是()。A:单词自身值B:单词在符号表中的位置C:单词的种别编码D:单词的种别编码和自身值正确答案:

6、D23:文法开始符号的所有()作为属性计算前的初始值。A:综合属性B:继承属性C:继承属性和综合属性D:都不是正确答案:B24:自上而下分析面临的四个问题中,不包括()。A:需消除左递归B:存在回朔C:虚假匹配D:寻找可归约串正确答案:D25:语法分析应遵循()。A:语义规则B:语法规则C:构词规则D:等价变换规则正确答案:C26:()不是编译程序的组成部分。A:词法分析程序B:代码生成程序C:设备管理程序D:语法分析程序正确答案:C27:()不可能是目标代码。A:汇编指令代码B:可重定位指令代码C:绝对指令代码D:中间代码正确答案:D28:在目标代码生成阶段,符号表用于()。A:目标代码生成

7、B:语义检查C:语法检查D:地址分配正确答案:D29:文法G产生的()的全体是该文法描述的语言。A:句型B:终结符集C:非终结符集D:句子正确答案:D30:文法SaaS|abc定义的语言是()。A:a2kbc|k>0B:akbc|k>0C:a2k-1bc|k>0D:akakbc|k>0正确答案:C31:非终结符除综合属性,还有其他属性。()A:错误B:正确正确答案:A32:对于每一个左线性文法G1,都存在一个右线性文法G2,使得L(G1)=L(G2)。()A:错误B:正确正确答案:B33:窥孔优化方法是通过考察一小段目标指令,并把这些指令替换为更短和更快的一段指令,从而

8、提高目标代码的质量。()A:错误B:正确正确答案:B34:对于每一个左线性文法G1,不一定存在一个右线性文法G2,使得L(G1)=L(G2)。()A:错误B:正确正确答案:A35:在自下而上的语法分析中,语法树与分析树一定相同。()A:错误B:正确正确答案:A36:变量既持有左值又持有右值,而常数和带有算符的表达式一般认为只持有右值。()A:错误B:正确正确答案:B37:复写传播的目的使对某些变量的赋值变为无用。()A:错误B:正确正确答案:B38:语法分析时必须先消除文法中的左递归。()A:错误B:正确正确答案:A39:编译前端主要由与源语言和目标机相关的那些部分组成。()A:错误B:正确正

9、确答案:A40:非终结符只有综合属性,由词法分析器提供。()A:错误B:正确正确答案:B41:一个文法所有句型的集合形成该文法所能接受的语言。()A:错误B:正确正确答案:A42:上下文无关文法比正规文法有更差的描述能力。()A:错误B:正确正确答案:A43:算符优先分析法不是一种规范规约法。()A:错误B:正确正确答案:B44:任何算符优先文法的句型中一定会有两个相邻的非终结符号。()A:错误B:正确正确答案:A45:二义文法是上下文无关文法。()A:错误B:正确正确答案:B46:确定的自动机以及不确定的自动机都不能正确地识别正规集。()A:错误B:正确正确答案:A47:一个有限状态自动机中,有且仅有一个唯一终态。()A:错误B:正确正确答案:A48:优化的任务在于对前端编译所产生的中间代码进行加工和变换,以其能产生运行结果更为准确的目标代码。()A:错误B:正确正确答案:A49:正规文法产生的语言都不可以用上下文无关文法来描述。()A:错误B:正确正确答案:A50:任何一种算法,不能判定任何上下文无关文法是否是LL(1)的。()A

我要回帖

更多关于 编译原理课后题第三版 的文章

 

随机推荐