MOOC 编译原理-哈尔滨工业大学 中国大学慕课答案_第1页
MOOC 编译原理-哈尔滨工业大学 中国大学慕课答案_第2页
MOOC 编译原理-哈尔滨工业大学 中国大学慕课答案_第3页
MOOC 编译原理-哈尔滨工业大学 中国大学慕课答案_第4页
MOOC 编译原理-哈尔滨工业大学 中国大学慕课答案_第5页
已阅读5页,还剩110页未读 继续免费阅读

下载本文档

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

文档简介

MOOC编译原理-哈尔滨工业大学中国大学慕课答案本讲模拟练习题(不计分)1、问题:编译是对()。选项:A、机器语言的执行B、汇编语言的翻译C、高级语言的翻译D、高级语言程序的解释执行正确答案:【高级语言的翻译】2、问题:用高级语言编写的程序经编译后产生的程序叫().选项:A、源程序B、目标程序C、连接程序D、解释程序正确答案:【目标程序】3、问题:()不是编译程序的组成部分。选项:A、词法分析程序B、代码生成程序C、设备管理程序D、语法分析程序正确答案:【设备管理程序】4、问题:源程序是句子的集合,()可以较好地反映句子的结构。选项:A、线性表B、树C、完全图D、堆栈正确答案:【树】5、问题:编译程序是一种()。选项:A、汇编程序B、翻译程序C、解释程序D、目标程序正确答案:【翻译程序】6、问题:按逻辑上划分,编译程序第三步工作是()。选项:A、语义分析B、词法分析C、语法分析D、代码生成正确答案:【语义分析】7、问题:编译程序中语法分析器接收以()为单位的输入。选项:A、单词B、表达式C、产生式D、句子正确答案:【单词】8、问题:编译过程中,语法分析器的任务就是()。选项:A、分析单词是怎样构成的B、分析单词串是如何构成语句和声明的C、分析语句和声明是如何构成程序的D、分析程序的结构正确答案:【分析单词串是如何构成语句和声明的】9、问题:语法分析时所依据的是()选项:A、语法规则B、词法规则C、语义规则D、等价变换规则正确答案:【语法规则】第1讲测验(计分)1、问题:编译是对()。选项:A、机器语言的执行B、汇编语言的翻译C、高级语言的翻译D、高级语言程序的解释执行正确答案:【高级语言的翻译】2、问题:把汇编语言程序翻译成机器可执行的目标程序的工作是由()完成的。选项:A、编译器B、汇编器C、解释器D、预处理器正确答案:【汇编器】3、问题:用高级语言编写的程序经编译后产生的程序叫()。选项:A、源程序B、目标程序C、连接程序D、解释程序正确答案:【目标程序】4、问题:()不是编译程序的组成部分。选项:A、词法分析程序B、代码生成程序C、设备管理程序D、语法分析程序正确答案:【设备管理程序】5、问题:通常一个编译程序中,不仅包含词法分析,语法分析,语义分析,中间代码生成,代码优化,目标代码生成等六个部分,还应包括()。选项:A、模拟执行器B、解释器C、表格处理和出错处理D、符号执行器正确答案:【表格处理和出错处理】6、问题:源程序是句子的集合,()可以较好地反映句子的结构。选项:A、线性表B、树C、完全图D、堆栈正确答案:【树】7、问题:编译程序是一种()。选项:A、汇编程序B、翻译程序C、解释程序D、目标程序正确答案:【翻译程序】8、问题:按逻辑上划分,编译程序第三步工作是()。选项:A、语义分析B、词法分析C、语法分析D、代码生成正确答案:【语义分析】9、问题:编译程序中语法分析器接收以()为单位的输入。选项:A、单词B、表达式C、产生式D、句子正确答案:【单词】10、问题:编译过程中,语法分析器的任务就是()。选项:A、分析单词是怎样构成的B、分析单词串是如何构成语句和声明的C、分析语句和声明是如何构成程序的D、分析程序的结构正确答案:【分析单词串是如何构成语句和声明的】11、问题:构造编译程序应掌握()。选项:A、源程序B、目标语言C、编译方法D、以上三项都是正确答案:【以上三项都是】12、问题:语法分析时所依据的是()。选项:A、语法规则B、词法规则C、语义规则D、等价变换规则正确答案:【语法规则】13、问题:将编译程序分成若干“遍”,是为了()。选项:A、提高程序的执行效率B、使程序的结构更为清晰C、利用有限的机器内存并提高机器的执行效率D、利用有限的机器内存但降低了机器的执行效率正确答案:【使程序的结构更为清晰】本讲模拟练习题(不计分)1、问题:文法:G:S→xSx|y所识别的语言是()。选项:A、B、C、D、正确答案:【】2、问题:给定文法A→bA|ca,为该文法句子的是()。选项:A、bbaB、cabC、bcaD、cba正确答案:【bca】3、问题:设有文法G[S]:S?S1|S0|Sa|Sc|a|b|c,下列符号串中是该文法的句子有()。选项:A、ab0B、a0b01C、a0b0aD、bc10正确答案:【bc10】4、问题:文法G产生的()的全体是该文法描述的语言。选项:A、句型B、终结符集C、非终结符集D、句子正确答案:【句子】5、问题:若文法G定义的语言是无限集,则文法必然是()。选项:A、递归的B、上下文无关的C、二义性的D、无二义性的正确答案:【递归的】6、问题:乔姆斯基(Chomsky)把文法分为四种类型,即0型、1型、2型、3型。其中3型文法是()。选项:A、非限制文法B、正则文法C、上下文有关文法D、上下文无关文法正确答案:【正则文法】7、问题:一个上下文无关文法G包括四个组成部分,它们是一组非终结符号,一组终结符号,一个开始符号,以及一组()。选项:A、句子B、产生式C、单词D、句型正确答案:【产生式】8、问题:若一个文法是递归的,则它所产生的语言的句子()。选项:A、是无穷多个B、是有穷多个C、是可枚举的D、个数是常量正确答案:【是无穷多个】9、问题:给定文法A→bA|cc,则符号串①cc②bcbc③bcbcc④bccbcc⑤bbbcc中,是该文法句子的是()。选项:A、①B、③④⑤C、②④D、①⑤正确答案:【①⑤】10、问题:文法E→E+E|E*E|i的句子i*i+i*i有()棵不同的语法树。选项:A、1B、3C、5D、7正确答案:【5】11、问题:文法S→aaS|abc定义的语言是()。选项:A、B、C、D、正确答案:【】12、问题:文法G:S→xSx|xS|y所识别的语言是()。选项:A、B、C、D、正确答案:【】13、问题:由文法的开始符号出发经过若干步(包括0步)推导产生的文法符号序列称为()。选项:A、语言B、句型C、句子D、句柄正确答案:【句型】14、问题:下列符号串不可以由符号集S={a,b}上的正闭包运算产生的是()。选项:A、εB、aC、aaD、ab正确答案:【ε】15、问题:文法G:S→xxS|y所识别的语言是()。选项:A、B、C、D、正确答案:【】16、问题:文法G:S→xS|y所识别的语言是()。选项:A、B、C、D、正确答案:【】第2讲测验(计分)1、问题:文法:G:S→xSx|y所识别的语言是()。选项:A、B、C、D、正确答案:【】2、问题:给定文法A→bA|ca,为该文法句子的是()。选项:A、bbaB、cabC、bcaD、cba正确答案:【bca】3、问题:设有文法G[S]:S?S1|S0|Sa|Sc|a|b|c,下列符号串中是该文法的句子有()。选项:A、ab0B、a0b01C、a0b0aD、bc10正确答案:【bc10】4、问题:文法G产生的()的全体是该文法描述的语言。选项:A、句型B、非终结符集C、终结符集D、句子正确答案:【句子】5、问题:若文法G定义的语言是无限集,则文法必然是()。选项:A、递归的B、上下文无关的C、二义性的D、无二义性的正确答案:【递归的】6、问题:乔姆斯基(Chomsky)把文法分为四种类型,即0型、1型、2型、3型。其中3型文法是()。选项:A、非限制文法B、正则文法C、上下文有关文法D、上下文无关文法正确答案:【正则文法】7、问题:一个上下文无关文法G包括四个组成部分,它们是一组非终结符号,一组终结符号,一个开始符号,以及一组()。选项:A、句子B、产生式C、单词D、句型正确答案:【产生式】8、问题:若一个文法是递归的,则它所产生的语言的句子()选项:A、是无穷多个B、是有穷多个C、是可枚举的D、个数是常量正确答案:【是无穷多个】9、问题:给定文法A→bA|cc,则符号串①cc②bcbc③bcbcc④bccbcc⑤bbbcc中,是该文法句子的是()。选项:A、①B、③④⑤C、②④D、①⑤正确答案:【①⑤】10、问题:文法S→aaS|abc定义的语言是()。选项:A、B、C、D、正确答案:【】11、问题:文法E→E+E|E*E|i的句子i*i+i*i有()棵不同的语法树。选项:A、1B、3C、5D、7正确答案:【5】12、问题:文法G:S→xSx|xS|y所识别的语言是()。选项:A、B、C、D、正确答案:【】13、问题:由文法的开始符号出发经过若干步(包括0步)推导产生的文法符号序列称为()。选项:A、语言B、句型C、句子D、句柄正确答案:【句型】14、问题:下列符号串不可以由符号集S={a,b}上的正闭包运算产生的是()。选项:A、εB、aC、aaD、ab正确答案:【ε】15、问题:文法G:S→xxS|y所识别的语言是()。选项:A、B、C、D、正确答案:【】16、问题:文法G:S→xS|y所识别的语言是()。选项:A、B、C、D、正确答案:【】本讲模拟练习题(不计分)1、问题:词法分析器的输出结果是()。选项:A、单词自身值B、单词在符号表中的位置C、单词的种别编码D、单词的种别编码和自身值正确答案:【单词的种别编码和自身值】2、问题:词法分析器不能()。选项:A、识别出数值常量B、过滤源程序中的注释C、扫描源程序并识别记号D、发现括号不匹配正确答案:【发现括号不匹配】3、问题:()这样一些语言,它们能被确定的有穷自动机识别,但不能用正则表达式表示。选项:A、存在B、不存在C、无法判定是否存在D、以上答案都不对正确答案:【不存在】4、问题:两个有穷自动机等价是指它们的()。选项:A、状态数相等B、有向弧数相等C、所识别的语言相等D、状态数和有向弧数相等正确答案:【所识别的语言相等】5、问题:词法分析器用于识别()。选项:A、句子B、产生式C、单词D、句型正确答案:【单词】6、问题:正则表达式和等价是指()。选项:A、和都是定义在一个字母表上的正则表达式B、和使用的运算符相同C、和代表同一正则集D、和代表不同正则集正确答案:【和代表同一正则集】7、问题:已知文法G[S]:S→A1,A→A1|S0|0,与G等价的正规式是()。选项:A、B、C、D、正确答案:【】8、问题:与等价的正规式是()。选项:A、B、C、D、正确答案:【】9、问题:如图所示自动机M,请问下列哪个字符串不是M所能识别的()。选项:A、bbaaB、abbaC、ababD、aabb正确答案:【aabb】10、问题:有限状态自动机能识别()。选项:A、上下文无关语言B、上下文有关语言C、正规语言D、0型文法定义的语言正确答案:【正规语言】11、问题:()不是DFA的成分。选项:A、有穷字母表B、多个初始状态的集合C、多个终态的集合D、转换函数正确答案:【多个初始状态的集合】12、问题:DFAM(见图)接受的字集为()。选项:A、以0开头的二进制数组成的集合B、以0结尾的二进制数组成的集合C、含奇数个0的二进制数组成的集合D、含偶数个0的二进制数组成的集合正确答案:【含偶数个0的二进制数组成的集合】13、问题:同正规式等价的正规式是()。选项:A、B、C、D、正确答案:【】14、问题:称有限自动机和等价是指()。选项:A、和都是定义在一个字母表上的有限自动机B、和状态数和有向边数相等C、和状态数或有向边数相等D、和所能识别的字符串集合相等正确答案:【和所能识别的字符串集合相等】15、问题:同正规式等价的正规式为()。选项:A、B、C、D、正确答案:【】16、问题:词法分析器的加工对象是()。选项:A、中间代码B、单词C、源程序D、元程序正确答案:【源程序】17、问题:如果一个正规式所代表的集合是无穷的,则它必含有的运算是()。选项:A、接运算“·”B、或运算“|”C、闭包运算“*”D、括号“(”和“)”正确答案:【闭包运算“*”】18、问题:同正规式等价的文法是()。选项:A、G1:S→aS|bS|εB、G2:S→aSb|εC、G3:S→aS|Sb|εD、G4:S→abS|ε正确答案:【G3:S→aS|Sb|ε】19、问题:一个正规式只能对应一个确定的有限状态自动机。选项:A、正确B、错误正确答案:【错误】20、问题:一个正规语言可能对应多个正规文法。选项:A、正确B、错误正确答案:【正确】第3讲测验(计分)1、问题:词法分析器的输出结果是()。选项:A、单词自身值B、单词在符号表中的位置C、单词的种别编码D、单词的种别编码和自身值正确答案:【单词的种别编码和自身值】2、问题:词法分析器不能()。选项:A、识别出数值常量B、过滤源程序中的注释C、扫描源程序并识别记号D、发现括号不匹配正确答案:【发现括号不匹配】3、问题:()这样一些语言,它们能被确定的有穷自动机识别,但不能用正则表达式表示。选项:A、存在B、不存在C、无法判定是否存在D、以上答案都不对正确答案:【不存在】4、问题:词法分析器的输入是()。选项:A、符号串B、源程序C、语法单位D、目标程序正确答案:【源程序】5、问题:两个有穷自动机等价是指它们的()。选项:A、状态数相等B、有向弧数相等C、所识别的语言相等D、状态数和有向弧数相等正确答案:【所识别的语言相等】6、问题:词法分析器用于识别()。选项:A、句子B、产生式C、单词D、句型正确答案:【单词】7、问题:正则表达式和等价是指()。选项:A、和都是定义在一个字母表上的正则表达式B、和中使用的运算符相同C、和代表同一正则集D、和代表不同正则集正确答案:【和代表同一正则集】8、问题:已知文法G[S]:S→A1,A→A1|S0|0。与G等价的正规式是()。选项:A、B、C、D、正确答案:【】9、问题:与等价的正规式是()。选项:A、B、C、D、正确答案:【】10、问题:如图所示自动机M,请问下列哪个字符串不是M所能识别的()。选项:A、bbaaB、abbaC、ababD、aabb正确答案:【aabb】11、问题:有限状态自动机能识别()。选项:A、上下文无关语言B、上下文有关语言C、.正规语言D、0型文法定义的语言正确答案:【.正规语言】12、问题:()不是DFA的成分。选项:A、有穷字母表B、多个初始状态的集合C、多个终态的集合D、转换函数正确答案:【多个初始状态的集合】13、问题:DFAM(见图)接受的字集为()。选项:A、以0开头的二进制数组成的集合B、以0结尾的二进制数组成的集合C、含奇数个0的二进制数组成的集合D、含偶数个0的二进制数组成的集合正确答案:【含偶数个0的二进制数组成的集合】14、问题:同正规式等价的正规式是()。选项:A、B、C、D、正确答案:【】15、问题:称有限自动机和等价是指()。选项:A、和都是定义在一个字母表上的有限自动机B、和状态数和有向边数相等C、和状态数或有向边数相等D、和所能识别的字符串集合相等正确答案:【和所能识别的字符串集合相等】16、问题:同正规式等价的正规式为()。选项:A、B、C、D、正确答案:【】17、问题:词法分析器的加工对象是()。选项:A、中间代码B、单词C、源程序D、元程序正确答案:【源程序】18、问题:如果一个正规式所代表的集合是无穷的,则它必含有的运算是()。选项:A、连接运算“·”B、或运算“|”C、闭包运算“*”D、括号“(”和“)”正确答案:【闭包运算“*”】19、问题:同正规式等价的文法是()。选项:A、G1:S→aS|bS|εB、G2:S→aSb|εC、G3:S→aS|Sb|εD、G4:S→abS|ε正确答案:【G3:S→aS|Sb|ε】本讲模拟练习题(不计分)1、问题:如果文法G是无二义的,则它的任何句子α()。选项:A、最左推导和最右推导对应的语法树必定相同B、最左推导和最右推导对应的语法树可能不同C、最左推导和最右推导必定相同D、可能存在两个不同的最左推导,但它们对应的语法树相同正确答案:【最左推导和最右推导对应的语法树必定相同】2、问题:采用自上而下分析,不必()。选项:A、消除回溯B、消除左递归C、消除右递归D、提取公共左因子正确答案:【消除右递归】3、问题:识别上下文无关语言的自动机是()。选项:A、下推自动机B、NFAC、DFAD、图灵机正确答案:【下推自动机】4、问题:()文法不是LL(1)的。选项:A、递归B、右递归C、2型D、含有公共左因子的正确答案:【含有公共左因子的】5、问题:已知文法G是无二义的,则对G的任意句型α()。选项:A、最左推导和最右推导对应的语法树必定相同B、最左推导和最右推导对应的语法树可能相同C、最左推导和最右推导必定相同D、可能存在两个不同的最左推导,但他们对应的语法树相同正确答案:【最左推导和最右推导对应的语法树必定相同】6、问题:在自上而下的语法分析中,应从()开始分析。选项:A、句型B、句子C、文法开始符号D、句柄正确答案:【文法开始符号】7、问题:一个文法G,若(),则称它是LL(1)文法。选项:A、G中不含左递归B、G无二义性C、G的LL(1)分析表中不含多重定义的条目D、G中产生式不含左公因子正确答案:【G的LL(1)分析表中不含多重定义的条目】8、问题:语法分析器的输入是()。选项:A、Token序列B、源程序C、目标程序D、符号表正确答案:【Token序列】9、问题:在递归子程序方法中,若文法存在左递归,则会使分析过程产生()。选项:A、回溯B、非法调用C、有限次调用D、无限循环正确答案:【无限循环】10、问题:LL(1)分析法中“1”的含义是在输入串中查看一个输入符号,其目的是()。选项:A、确定最左推导B、确定句柄C、确定使用哪一个产生式进行展开D、确定是否推导正确答案:【确定使用哪一个产生式进行展开】第4讲测验(计分)1、问题:如果文法G是无二义的,则它的任何句子α()选项:A、最左推导和最右推导对应的语法树必定相同B、最左推导和最右推导对应的语法树可能不同C、最左推导和最右推导必定相同D、可能存在两个不同的最左推导,但它们对应的语法树相同正确答案:【最左推导和最右推导对应的语法树必定相同】2、问题:采用自上而下分析,不必()。选项:A、消除回溯B、消除左递归C、消除右递归D、提取公共左因子正确答案:【消除右递归】3、问题:识别上下文无关语言的自动机是()。选项:A、下推自动机B、NFAC、DFAD、图灵机正确答案:【下推自动机】4、问题:()文法不是LL(1)的选项:A、递归B、右递归C、2型D、含有公共左因子的正确答案:【含有公共左因子的】5、问题:已知文法G是无二义的,则对G的任意句型α()。选项:A、.最左推导和最右推导对应的语法树必定相同B、最左推导和最右推导对应的语法树可能相同C、最左推导和最右推导必定相同D、可能存在两个不同的最左推导,但他们对应的语法树相同正确答案:【.最左推导和最右推导对应的语法树必定相同】6、问题:在自上而下的语法分析中,应从()开始分析。选项:A、句型B、句子C、文法开始符号D、句柄正确答案:【文法开始符号】7、问题:一个文法G,若(),则称它是LL(1)文法。选项:A、G中不含左递归B、G无二义性C、G的LL(1)分析表中不含多重定义的条目D、G中产生式不含左公因子正确答案:【G的LL(1)分析表中不含多重定义的条目】8、问题:语法分析器的输入是()。选项:A、Token序列B、源程序C、目标程序D、符号表正确答案:【Token序列】9、问题:在递归子程序方法中,若文法存在左递归,则会使分析过程产生()。选项:A、回溯B、非法调用C、有限次调用D、无限循环正确答案:【无限循环】10、问题:LL(1)分析法中“1”的含义是在输入串中查看一个输入符号,其目的是()。选项:A、确定最左推导B、确定句柄C、确定使用哪一个产生式进行展开D、确定是否推导正确答案:【确定使用哪一个产生式进行展开】本讲模拟练习题(不计分)1、问题:在语法分析处理中,FIRST集合、FOLLOW集合均是()。选项:A、非终结符集B、终结符集C、字母表D、状态集正确答案:【终结符集】2、问题:在编译过程中,如果遇到错误应该()。选项:A、把错误理解成局部的错误B、对错误在局部范围内进行纠正,继续向下分析C、当发现错误时,跳过错误所在的语法单位继续分析下去D、当发现错误时立即停止编译,待用户改正错误后再继续编译正确答案:【当发现错误时,跳过错误所在的语法单位继续分析下去】3、问题:已知文法G[S]:S→eT|RTT→DR|εR→dR|εD→a|bd求FIRST(S)=()。选项:A、{e}B、{e,d,a,b}C、{e,d}D、{e,d,a,b,ε}正确答案:【{e,d,a,b,ε}】4、问题:已知文法G[S]:S→eT|RTT→DR|εR→dR|εD→a|bd求FOLLOW(D)=()。选项:A、{d,e}B、{d,ε}C、{d,$}D、{a,d}正确答案:【{d,$}】5、问题:FIRST集中可以含有ε。选项:A、正确B、错误正确答案:【正确】6、问题:FOLLOW集中可以含有ε。选项:A、正确B、错误正确答案:【错误】7、问题:SELECT集中可以含有ε。选项:A、正确B、错误正确答案:【错误】第5讲测验(计分)1、问题:在语法分析处理中,FIRST集合、FOLLOW集合均是()。选项:A、非终结符集B、终结符集C、字母表D、状态集正确答案:【终结符集】2、问题:已知文法G[S]:S→eT|RTT→DR|εR→dR|εD→a|bd求FIRST(S)=()。选项:A、{e}B、{e,d,a,b}C、{e,d}D、{e,d,a,b,ε}正确答案:【{e,d,a,b,ε}】3、问题:在编译过程中,如果遇到错误应该()选项:A、把错误理解成局部的错误B、对错误在局部范围内进行纠正,继续向下分析C、当发现错误时,跳过错误所在的语法单位继续分析下去D、当发现错误时立即停止编译,待用户改正错误后再继续编译正确答案:【当发现错误时,跳过错误所在的语法单位继续分析下去】4、问题:已知文法G[S]:S→eT|RTT→DR|εR→dR|εD→a|bd求FOLLOW(D)=()。选项:A、{d,e}B、{d,ε}C、{d,$}D、{a,d}正确答案:【{d,$}】5、问题:FIRST集中可以含有ε选项:A、正确B、错误正确答案:【正确】6、问题:FOLLOW集中可以含有ε选项:A、正确B、错误正确答案:【错误】7、问题:SELECT集中可以含有ε。选项:A、正确B、错误正确答案:【错误】本讲模拟练习题(不计分)1、问题:若a为终结符,则A→α·aβ为()项目。选项:A、归约B、移进C、接受D、待约正确答案:【移进】2、问题:一个句型中的()称为该句型的句柄。选项:A、最左直接短语B、最右直接短语C、终结符D、非终结符正确答案:【最左直接短语】3、问题:在自底向上的语法分析方法中,分析的关键是()。选项:A、寻找句柄B、寻找句型C、消除递归D、选择候选式正确答案:【寻找句柄】4、问题:在自顶向下的语法分析方法中,分析的关键是()。选项:A、寻找句柄B、寻找句型C、消除递归D、选择候选式正确答案:【选择候选式】5、问题:若B为非终结符,则A→a·Bb为()。选项:A、移进项目B、归约项目C、接受项目D、待约项目正确答案:【待约项目】6、问题:在规范归约中,用()来刻画可归约串。选项:A、直接短语B、句柄C、最左素短语D、素短语正确答案:【句柄】7、问题:下列动作中,不是自下而上分析动作的是()。选项:A、移进B、展开C、接受D、报错正确答案:【展开】8、问题:下列动作中,不是自上而下分析动作的是()。选项:A、匹配B、展开C、移进D、报错正确答案:【移进】9、问题:若B为非终结符,则A→α·为()项目。选项:A、归约B、移进C、接受D、待约正确答案:【归约】10、问题:设有文法G[T]:T→T*F|FF→F↑P|PP→(T)|a该文法句型T*P↑(T*F)的句柄是下列符号串()。选项:A、(T*F)B、T*FC、PD、P↑(T*F)正确答案:【P】11、问题:LR分析表中的转移表(goto)是以()作为列标题的。选项:A、终结符B、非终结符C、终结符或非终结符D、表示状态的整型数正确答案:【非终结符】12、问题:LR分析表中的动作表(action)是以()作为列标题的。选项:A、终结符B、非终结符C、终结符或非终结符D、终结符和结束符$正确答案:【终结符和结束符$】13、问题:设有文法G[T]:T→T*F|FF→F↑P|PP→(T)|a该文法句型T*F↑(T*F)的句柄是下列符号串()。选项:A、(T*F)B、T*FC、PD、P↑(T*F)正确答案:【T*F】14、问题:下列项目中为可归约项目的是()。选项:A、E′→·EB、L→·C、L→-·LD、F→L*·F正确答案:【L→·】15、问题:同正规式等价的正规式是()。选项:A、B、C、D、正确答案:【】16、问题:LR分析器的核心部分是一张分析表,该表由()组成。选项:A、ACTION表B、GOTO表C、预测分析表D、ACTION表和GOTO表正确答案:【ACTION表和GOTO表】第6讲测验(计分)1、问题:若a为终结符,则A→α·aβ为()项目。选项:A、归约B、移进C、接受D、待约正确答案:【移进】2、问题:一个句型中的()称为该句型的句柄。选项:A、最左直接短语B、最右直接短语C、终结符D、非终结符正确答案:【最左直接短语】3、问题:在自底向上的语法分析方法中,分析的关键是()。选项:A、寻找句柄B、寻找句型C、消除递归D、选择候选式正确答案:【寻找句柄】4、问题:在自顶向下的语法分析方法中,分析的关键是()。选项:A、寻找句柄B、寻找句型C、消除递归D、选择候选式正确答案:【选择候选式】5、问题:在LR分析法中,分析栈中存放的状态是识别规范句型()的DFA状态。选项:A、句柄B、前缀C、活前缀D、LR(0)项目正确答案:【活前缀】6、问题:若B为非终结符,则A→a·Bb为()。选项:A、移进项目B、归约项目C、接受项目D、待约项目正确答案:【待约项目】7、问题:在规范归约中,用()来刻画可归约串。选项:A、直接短语B、句柄C、最左素短语D、素短语正确答案:【句柄】8、问题:下列动作中,不是自下而上分析动作的是()。选项:A、移进B、展开C、接受D、报错正确答案:【展开】9、问题:下列动作中,不是自上而下分析动作的是()。选项:A、匹配B、展开C、移进D、报错正确答案:【移进】10、问题:若B为非终结符,则A→α·为()项目。选项:A、归约B、移进C、接受D、待约正确答案:【归约】11、问题:设有文法G[T]:T→T*F|FF→F↑P|PP→(T)|a该文法句型T*P↑(T*F)的句柄是下列符号串()。选项:A、T*F)B、T*FC、PD、P↑(T*F)正确答案:【P】12、问题:LR分析表中的转移表(goto)是以()作为列标题的。选项:A、终结符B、非终结符C、终结符或非终结符D、表示状态的整型数正确答案:【非终结符】13、问题:在自下而上的语法分析中,应从()开始分析。选项:A、句型B、句子C、文法开始符号D、句柄正确答案:【句子】14、问题:设有文法G[T]:T→T*F|FF→F↑P|PP→(T)|a该文法句型T*F↑(T*F)的句柄是下列符号串()。选项:A、(T*F)B、T*FC、PD、P↑(T*F)正确答案:【T*F】15、问题:LR分析表中的动作表(action)是以()作为列标题的。选项:A、终结符B、非终结符C、终结符或非终结符D、终结符和结束符$正确答案:【终结符和结束符$】16、问题:下列项目中为可归约项目的是()。选项:A、E′→·EB、L→·C、L→-·LD、F→L*·F正确答案:【L→·】17、问题:同正规式等价的正规式是()。选项:A、B、C、D、正确答案:【】18、问题:LR分析器的核心部分是一张分析表,该表由()组成。选项:A、ACTION表B、GOTO表C、预测分析表D、ACTION表和GOTO表正确答案:【ACTION表和GOTO表】19、问题:一个()指明了在LR分析过程中的某个时刻所能看到产生式多大一部分。选项:A、活前缀B、前缀C、归约活前缀D、项目正确答案:【项目】本讲模拟练习题(不计分)1、问题:一个LR(1)文法合并同心集后若不是LALR(1)文法(ꢀ)选项:A、则可能存在移进/归约冲突B、则可能存在归约/归约冲突C、则可能存在移进/归约冲突和归约/归约冲突D、以上说法都不对正确答案:【则可能存在归约/归约冲突】2、问题:若状态k含有项目“A→α·”,且仅当输入符号a∈FOLLOW(A)时,才用规则“A→α”归约的语法分析方法是()。选项:A、LALR分析法B、R(0)分析法C、LR(1)分析法D、SLR(1)分析法正确答案:【SLR(1)分析法】3、问题:LR(1)文法都是()。选项:A、无二义性且无左递归B、可能有二义性但无左递归C、无二义性但可能是左递归D、可以既有二义性又有左递归正确答案:【无二义性但可能是左递归】4、问题:同心集合并可能会产生新的()冲突。选项:A、二义B、移进/移进C、移进/归约D、归约/归约正确答案:【归约/归约】5、问题:就文法的描述能力来说,有()。选项:A、SLR(1)?LR(0)B、LR(1)?LR(0)C、SLR(1)?LR(1)D、无二义文法?LR(1)正确答案:【SLR(1)?LR(1)】6、问题:在LR(0)的Action表中,如果某行中存在标记为“”的栏,则()。选项:A、该行必定填满“”B、该行未必填满“”C、其他行也有“”D、goto表中也有“”正确答案:【该行必定填满“”】7、问题:若状态k含有项目“A→α·”,对任意非终结符a,都用规则“A→α”归约的语法分析方法是()。选项:A、LALR分析法B、LR(0)分析法C、LR(1)分析法D、SLR(1)分析法正确答案:【LR(0)分析法】8、问题:在SLR(1)的Action表中,如果某行中存在标记为“”的栏,则()。选项:A、该行必定填满“”B、该行未必填满“”C、其他行也有“”D、goto表中也有“”正确答案:【该行未必填满“”】第7讲测验(计分)1、问题:一个LR(1)文法合并同心集后若不是LALR(1)文法()。选项:A、则可能存在移进/归约冲突B、则可能存在归约/归约冲突C、则可能存在移进/归约冲突和归约/归约冲突D、以上说法都不对正确答案:【则可能存在归约/归约冲突】2、问题:若状态k含有项目“A→α·”,且仅当输入符号a∈FOLLOW(A)时,才用规则“A→α”归约的语法分析方法是()。选项:A、LALR分析法B、LR(0)分析法C、LR(1)分析法D、SLR(1)分析法正确答案:【SLR(1)分析法】3、问题:LR(1)文法都是()。选项:A、无二义性且无左递归B、可能有二义性但无左递归C、无二义性但可能是左递归D、可以既有二义性又有左递归正确答案:【无二义性但可能是左递归】4、问题:同心集合并可能会产生新的()冲突。选项:A、二义B、移进/移进C、移进/归约D、归约/归约正确答案:【归约/归约】5、问题:就文法的描述能力来说,有()。选项:A、SLR(1)?LR(0)B、LR(1)?LR(0)C、SLR(1)?LR(1)D、无二义文法?LR(1)正确答案:【SLR(1)?LR(1)】6、问题:在LR(0)的Action表中,如果某行中存在标记为“”的栏,则()。选项:A、该行必定填满“”B、该行未必填满“”C、其他行也有“”D、goto表中也有“”正确答案:【该行必定填满“”】7、问题:若状态k含有项目“A→α·”,对任意非终结符a,都用规则“A→α”归约的语法分析方法是()。选项:A、LALR分析法B、LR(0)分析法C、LR(1)分析法D、SLR(1)分析法正确答案:【LR(0)分析法】8、问题:在SLR(1)的Action表中,如果某行中存在标记为“”的栏,则()。选项:A、该行必定填满“”B、该行未必填满“”C、其他行也有“”D、goto表中也有“”正确答案:【该行未必填满“”】9、问题:编译程序的语法分析器必须输出的信息是()。选项:A、语法错误信息B、语法规则信息C、语法分析过程D、语句序列正确答案:【语法错误信息】本讲模拟练习题(不计分)1、问题:文法G[S]及其语法制导翻译定义如下:产生式语义动作S’→Sprint(S.num)S→(L)S.num=L.num+1S→aS.num=0L→L(1),SL.num=L(1).num+S.numL→SL.num=S.num若输入为(a,(a)),且采用自底向上的分析方法,则输出为()。选项:A、0B、1C、2D、4正确答案:【2】2、问题:有文法G及其语法制导翻译如下所示(语义规则中的*和+分别是常规意义下的算术运算符):E→E(1)∧T{E.val=E(1).val*T.val}E→T{E.val=T.val}T→T(1)#n{T.val=T(1).val+n.val}T→n{T.val=n.val}则分析句子3∧3#4其值为()。选项:A、10B、21C、14D、24正确答案:【21】3、问题:有一语法指导定义如下:S→bAbprint“1”A→(Bprint“2”A→aprint“3”B→aA)print“4”若输入序列为b(a(a(aa)))b,且采用自底向上的分析方法,则输出序列为()。选项:A、32224441B、34242421C、12424243D、34442212正确答案:【34242421】4、问题:有一语法指导定义如下,其中+表示符号连接运算:S→BprintB.versB→aB.vers=aB→bB.vers=bB→BaB.vers=a+B.versB→BbB.vers=b+B.vers若输入序列为abab,且采用自底向上的分析方法,则输出序列为()。选项:A、aabbB、ababC、bbaaD、baba正确答案:【baba】5、问题:使用()可以定义一个程序的意义。选项:A、语义规则B、词法规则C、产生规则D、词法规则正确答案:【语义规则】6、问题:以下说法正确的是()。选项:A、语义规则中的属性有两种:综合属性与继承属性B、终结符只有继承属性,它由词法分析器提供C、非终结符可以有综合属性,但不能有继承属性D、属性值在分析过程中可以进行计算,但不能传递正确答案:【语义规则中的属性有两种:综合属性与继承属性】第8讲测验(计分)1、问题:文法G[S]及其语法制导翻译定义如下:产生式语义动作S’→Sprint(S.num)S→(L)S.num=L.num+1S→aS.num=0L→L(1),SL.num=L(1).num+S.numL→SL.num=S.num若输入为(a,(a)),且采用自底向上的分析方法,则输出为()。选项:A、0B、1C、2D、3正确答案:【2】2、问题:有文法G及其语法制导翻译如下所示(语义规则中的*和+分别是常规意义下的算术运算符):E→E(1)∧T{E.val=E(1).val*T.val}E→T{E.val=T.val}T→T(1)#n{T.val=T(1).val+n.val}T→n{T.val=n.val}则分析句子3∧3#4其值为()。选项:A、10B、21C、14D、24正确答案:【21】3、问题:有一语法指导定义如下:S→bAbprint“1”A→(Bprint“2”A→aprint“3”B→aA)print“4”若输入序列为b(a(a(aa)))b,且采用自底向上的分析方法,则输出序列为()。选项:A、32224441B、34242421C、12424243D、34442212正确答案:【34242421】4、问题:有一语法指导定义如下,其中+表示符号连接运算:S→BprintB.versB→aB.vers=aB→bB.vers=bB→BaB.vers=a+B.versB→BbB.vers=b+B.vers若输入序列为abab,且采用自底向上的分析方法,则输出序列为()。选项:A、aabbB、ababC、bbaaD、baba正确答案:【baba】5、问题:终结符具有()属性。选项:A、继承B、综合C、抽象D、传递正确答案:【综合】6、问题:使用()可以定义一个程序的意义。选项:A、语义规则B、词法规则C、词法规则D、产生规则正确答案:【语义规则】7、问题:以下说法正确的是()。选项:A、语义规则中的属性有两种:综合属性与继承属性B、终结符只有继承属性,它由词法分析器提供C、非终结符可以有综合属性,但不能有继承属性D、属性值在分析过程中可以进行计算,但不能传递正确答案:【语义规则中的属性有两种:综合属性与继承属性】本讲模拟练习题(不计分)1、问题:关于将L-SDD转换为SDT的规则,以下选项中,正确的是()。选项:A、将计算某个非终结符号A的继承属性的动作放在产生式的最后B、将计算一个产生式左部符号的继承属性的动作放置在产生式的最后C、将计算某个非终结符号A的继承属性的动作插入到产生式右部中紧靠在A的本次出现之前的位置上D、将每个语义动作都放在产生式的最后正确答案:【将计算某个非终结符号A的继承属性的动作插入到产生式右部中紧靠在A的本次出现之前的位置上】2、问题:以下说法不正确的是()。选项:A、如果一个S-SDD的基本文法可以使用LR分析技术,那么它的SDT可以在LL语法分析过程中实现B、如果一个S-SDD的基本文法可以使用LR分析技术,那么它的SDT可以在LR语法分析过程中实现C、如果一个L-SDD的基本文法可以使用LL分析技术,那么它的SDT可以在LL语法分析过程中实现D、如果一个L-SDD的基本文法可以使用LL分析技术,那么它的SDT可以在LR语法分析过程中实现正确答案:【如果一个S-SDD的基本文法可以使用LR分析技术,那么它的SDT可以在LL语法分析过程中实现】3、问题:以下说法不正确的是()。选项:A、使用语法制导翻译方案的编译程序能同时进行语法分析和语义分析B、语法制导翻译方案(SDT)是在产生式右部中嵌入了程序片段(称为语义动作)的CFGC、SDD可以看作是SDT的具体实施方案D、将一个S-SDD转换为SDT的方法是:将每个语义动作都放在产生式的最后正确答案:【SDD可以看作是SDT的具体实施方案】4、问题:在非递归的预测分析过程中进行翻译,以下说法不正确的是()。选项:A、要想在非递归的预测分析过程中进行翻译,需要扩展语法分析栈B、非终结符A的继承属性和综合属性的计算时机不同C、将非终结符A的继承属性和综合属性存放在不同的记录中D、综合属性在A出现之前就可以计算正确答案:【综合属性在A出现之前就可以计算】5、问题:在非递归的预测分析过程中进行翻译,以下说法不正确的是()。选项:A、要想在非递归的预测分析过程中进行翻译,需要扩展语法分析栈B、综合记录用于存放非终结符综合属性值C、动作记录,用来存放指向将被执行的语义动作代码的指针D、综合属性存放在A本身的记录中正确答案:【综合属性存放在A本身的记录中】6、问题:在非递归的预测分析过程中进行翻译,以下说法不正确的是()。选项:A、分析栈中的每一个记录都对应着一段执行代码B、综合记录出栈时,要将综合属性值复制给后面特定的语义动作C、变量展开时(即变量本身的记录出栈时),如果其含有继承属性,则要将继承属性值复制给后面特定的语义动作D、继承属性在A的儿子们都分析完毕之后才能计算正确答案:【继承属性在A的儿子们都分析完毕之后才能计算】第9讲测验(计分)1、问题:关于将L-SDD转换为SDT的规则,以下选项中,正确的是()。选项:A、将计算某个非终结符号A的继承属性的动作放在产生式的最后B、将计算一个产生式左部符号的继承属性的动作放置在产生式的最后C、将计算某个非终结符号A的继承属性的动作插入到产生式右部中紧靠在A的本次出现之前的位置上D、将每个语义动作都放在产生式的最后正确答案:【将计算某个非终结符号A的继承属性的动作插入到产生式右部中紧靠在A的本次出现之前的位置上】2、问题:以下说法不正确的是()。选项:A、如果一个S-SDD的基本文法可以使用LR分析技术,那么它的SDT可以在LL语法分析过程中实现B、如果一个S-SDD的基本文法可以使用LR分析技术,那么它的SDT可以在LR语法分析过程中实现C、如果一个L-SDD的基本文法可以使用LL分析技术,那么它的SDT可以在LL语法分析过程中实现D、如果一个L-SDD的基本文法可以使用LL分析技术,那么它的SDT可以在LR语法分析过程中实现正确答案:【如果一个S-SDD的基本文法可以使用LR分析技术,那么它的SDT可以在LL语法分析过程中实现】3、问题:以下说法不正确的是()。选项:A、使用语法制导翻译方案的编译程序能同时进行语法分析和语义分析B、语法制导翻译方案(SDT)是在产生式右部中嵌入了程序片段(称为语义动作)的CFGC、SDD可以看作是SDT的具体实施方案D、将一个S-SDD转换为SDT的方法是:将每个语义动作都放在产生式的最后正确答案:【SDD可以看作是SDT的具体实施方案】4、问题:在非递归的预测分析过程中进行翻译,以下说法不正确的是()。选项:A、要想在非递归的预测分析过程中进行翻译,需要扩展语法分析栈B、非终结符A的继承属性和综合属性的计算时机不同C、将非终结符A的继承属性和综合属性存放在不同的记录中D、综合属性在A出现之前就可以计算正确答案:【综合属性在A出现之前就可以计算】5、问题:在非递归的预测分析过程中进行翻译,以下说法不正确的是()。选项:A、要想在非递归的预测分析过程中进行翻译,需要扩展语法分析栈B、综合记录用于存放非终结符综合属性值C、动作记录,用来存放指向将被执行的语义动作代码的指针D、综合属性存放在A本身的记录中正确答案:【综合属性存放在A本身的记录中】6、问题:在非递归的预测分析过程中进行翻译,以下说法不正确的是()。选项:A、分析栈中的每一个记录都对应着一段执行代码B、综合记录出栈时,要将综合属性值复制给后面特定的语义动作C、变量展开时(即变量本身的记录出栈时),如果其含有继承属性,则要将继承属性值复制给后面特定的语义动作D、继承属性在A的儿子们都分析完毕之后才能计算正确答案:【继承属性在A的儿子们都分析完毕之后才能计算】本讲模拟练习题(不计分)1、问题:在递归的预测分析过程中进行翻译,以下说法不正确的是()。选项:A、可以将一个递归的预测分析器扩展为一个翻译器B、在语法分析器中,每个非终结符A对应一个过程,在做语义分析时,要将过程扩展成一个函数C、以继承属性作为函数的参数,以综合属性作为函数的返回值D、以综合属性作为函数的参数,以继承属性作为函数的返回值正确答案:【以综合属性作为函数的参数,以继承属性作为函数的返回值】2、问题:在递归的预测分析过程中进行翻译,以下说法不正确的是()。选项:A、在语法分析器中,每个非终结符A对应一个过程,在做语义分析时,要将过程扩展成一个函数B、对出现在A产生式右部中的每个文法符号的每个属性都设置一个局部变量C、如果非终结符含有继承属性,需要将函数调用的返回值赋给相应的局部变量D、对于产生式右部的每个动作,将其代码复制到语法分析器,并把对属性的引用改为对相应变量的引用正确答案:【如果非终结符含有继承属性,需要将函数调用的返回值赋给相应的局部变量】3、问题:以下说法不正确的是()。选项:A、语法制导翻译方案只限自底向上的分析方法B、给定一个以LL文法为基础的L-SDD,可以修改这个文法,并在LR语法分析过程中计算这个新文法之上的SDDC、对于这个内嵌的语义动作,向文法中引入一个标记非终结符M来替换它D、每个标记非终结符M对应着一个空产生式M→ε,该产生式对应着一段语义子程序,它的任务就是完成M所替换的那个语义动作要完成的工作正确答案:【语法制导翻译方案只限自底向上的分析方法】4、问题:给定一个以LL文法为基础的L-属性定义,可以修改这个文法,并在LR语法分析过程中计算这个新文法之上的SDD。选项:A、正确B、错误正确答案:【正确】5、问题:在各个非终结符之前放置语义动作来计算它的继承属性,并在产生式后端放置语义动作计算综合属性。选项:A、正确B、错误正确答案:【正确】6、问题:在各个非终结符之前放置语义动作来计算它的综合属性,并在产生式后端放置语义动作计算继承属性。选项:A、正确B、错误正确答案:【错误】7、问题:对每个内嵌的语义动作,向文法中引入一个标记非终结符来替换它。每个这样的位置都有一个不同的标记,并且对于任意一个标记M都有一个产生式M→ε。选项:A、正确B、错误正确答案:【正确】第10讲测验(计分)1、问题:在递归的预测分析过程中进行翻译,以下说法不正确的是()。选项:A、可以将一个递归的预测分析器扩展为一个翻译器B、在语法分析器中,每个非终结符A对应一个过程,在做语义分析时,要将过程扩展成一个函数C、以继承属性作为函数的参数,以综合属性作为函数的返回值D、以综合属性作为函数的参数,以继承属性作为函数的返回值正确答案:【以综合属性作为函数的参数,以继承属性作为函数的返回值】2、问题:在递归的预测分析过程中进行翻译,以下说法不正确的是()。选项:A、在语法分析器中,每个非终结符A对应一个过程,在做语义分析时,要将过程扩展成一个函数B、对出现在A产生式右部中的每个文法符号的每个属性都设置一个局部变量C、如果非终结符含有继承属性,需要将函数调用的返回值赋给相应的局部变量D、对于产生式右部的每个动作,将其代码复制到语法分析器,并把对属性的引用改为对相应变量的引用正确答案:【如果非终结符含有继承属性,需要将函数调用的返回值赋给相应的局部变量】3、问题:以下说法不正确的是()。选项:A、语法制导翻译方案只限自底向上的分析方法B、给定一个以LL文法为基础的L-SDD,可以修改这个文法,并在LR语法分析过程中计算这个新文法之上的SDDC、对于这个内嵌的语义动作,向文法中引入一个标记非终结符M来替换它D、每个标记非终结符M对应着一个空产生式M→ε,该产生式对应着一段语义子程序,它的任务就是完成M所替换的那个语义动作要完成的工作正确答案:【语法制导翻译方案只限自底向上的分析方法】4、问题:给定一个以LL文法为基础的L-属性定义,可以修改这个文法,并在LR语法分析过程中计算这个新文法之上的SDD。选项:A、正确B、错误正确答案:【正确】5、问题:在各个非终结符之前放置语义动作来计算它的综合属性,并在产生式后端放置语义动作计算继承属性。选项:A、正确B、错误正确答案:【错误】6、问题:对每个内嵌的语义动作,向文法中引入一个标记非终结符来替换它。每个这样的位置都有一个不同的标记,并且对于任意一个标记M都有一个产生式M→ε。选项:A、正确B、错误正确答案:【正确】7、问题:在各个非终结符之前放置语义动作来计算它的继承属性,并在产生式后端放置语义动作计算综合属性。选项:A、正确B、错误正确答案:【正确】本讲模拟练习题(不计分)1、问题:中间代码生成时所依据的是()。选项:A、语法规则B、词法规则C、语义规则D、等价变换规则正确答案:【语义规则】2、问题:在编译程序中与中间代码生成无关的是()。选项:A、便于目标代码的优化B、便于存储空间的组织C、便于编译程序的移植D、便于目标代码的移植正确答案:【便于目标代码的移植】3、问题:以下说法不正确的是()。选项:A、对于声明语句,语义分析的主要任务就是收集标识符的类型等属性信息,为每一个名字分配一个相对地址B、从变量类型可以知道该变量在运行时刻需要的内存数量。在编译时刻,可以使用这些数量为每一个名字分配一个相对地址C、名字的类型和相对地址信息保存在相应的符号表条目中D、对声明的处理要构造符号表,但不产生中间代码正确答案:【对声明的处理要构造符号表,但不产生中间代码】4、问题:以下说法不正确的是()。选项:A、类型自身也有结构,用类型表达式来表示这种结构B、基本类型不是类型表达式C、类型名也是类型表达式D、将类型构造符作用于类型表达式可以构成新的类型表达式正确答案:【基本类型不是类型表达式】5、问题:数组元素的地址计算与数组的存储方式有关。选项:A、正确B、错误正确答案:【正确】6、问题:在程序中标识符的出现仅为使用性的。选项:A、正确B、错误正确答案:【错误】7、问题:在编译阶段只对可执行语句进行翻译。选项:A、正确B、错误正确答案:【错误】8、问题:在程序中标识符的出现仅为定义性的。选项:A、正确B、错误正确答案:【错误】第11讲测验(计分)1、问题:中间代码生成时所依据的是()。选项:A、语法规则B、词法规则C、语义规则D、等价变换规则正确答案:【语义规则】2、问题:在编译程序中与中间代码生成无关的是()。选项:A、便于目标代码的优化B、便于存储空间的组织C、便于编译程序的移植D、便于目标代码的移植正确答案:【便于目标代码的移植】3、问题:以下说法不正确的是()。选项:A、对于声明语句,语义分析的主要任务就是收集标识符的类型等属性信息,为每一个名字分配一个相对地址B、从变量类型可以知道该变量在运行时刻需要的内存数量。在编译时刻,可以使用这些数量为每一个名字分配一个相对地址C、名字的类型和相对地址信息保存在相应的符号表条目中D、对声明的处理要构造符号表,但不产生中间代码正确答案:【对声明的处理要构造符号表,但不产生中间代码】4、问题:以下说法不正确的是()。选项:A、类型自身也有结构,用类型表达式来表示这种结构B、基本类型不是类型表达式C、类型名也是类型表达式D、将类型构造符作用于类型表达式可以构成新的类型表达式正确答案:【基本类型不是类型表达式】5、问题:数组元素的地址计算与数组的存储方式有关。选项:A、正确B、错误正确答案:【正确】6、问题:在程序中标识符的出现仅为定义性的。选项:A、正确B、错误正确答案:【错误】7、问题:在程序中标识符的出现仅为使用性的。选项:A、正确B、错误正确答案:【错误】8、问题:在编译阶段只对可执行语句进行翻译。选项:A、正确B、错误正确答案:【错误】本讲模拟练习题(不计分)1、问题:有文法G及其语法制导翻译如下所示(语义规则中的*和+分别是常规意义下的算术运算符):则分析句子1∧2∧3#4其值为()。选项:A、10B、34C、14D、54正确答案:【14】2、问题:用()可以把a:=b+c翻译成四元式序列。选项:A、语法规则B、词法规则C、语义规则D、等价变换规则正确答案:【语义规则】3、问题:有文法G及其语法制导翻译如下所示(语义规则中的*和+分别是常规意义下的算术运算符):则分析句子2∧3#4其值为()。选项:A、10B、21C、14D、24正确答案:【14】4、问题:以下说法不正确的是()。选项:A、赋值语句翻译的主要任务是生成对表达式求值的三地址码B、在增量翻译方法中,gen()函数不仅要构造出一个新的三地址指令,还要将它添加到至今为止已生成的指令序列之后C、如果一个赋值语句中涉及到数组元素,那么将该语句翻译成三地址码时要解决的主要问题是确定数组元素的存放地址,也就是数组元素的寻址D、数组元素的地址计算与数组的存储方式无关正确答案:【数组元素的地址计算与数组的存储方式无关】5、问题:数组元素的地址由两部分构成,一部分是基地址,另一部分是偏移量。选项:A、正确B、错误正确答案:【正确】6、问题:基地址通过查符号表即可获得。选项:A、正确B、错误正确答案:【正确】7、问题:数组元素的偏移地址的计算只取决于数组的下标。选项:A、正确B、错误正确答案:【错误】8、问题:设计数组引用的SDT的关键问题是:如何将地址计算公式和数组引用的文法关联起来。选项:A、正确B、错误正确答案:【正确】第12讲测验(计分)1、问题:有文法G及其语法制导翻译如下所示(语义规则中的*和+分别是常规意义下的算术运算符):则分析句子1∧2∧3#4其值为()。选项:A、10B、34C、14D、54正确答案:【14】2、问题:用()可以把a:=b+c翻译成四元式序列。选项:A、语法规则B、词法规则C、语义规则D、等价变换规则正确答案:【语义规则】3、问题:有文法G及其语法制导翻译如下所示(语义规则中的*和+分别是常规意义下的算术运算符):则分析句子2∧3#4其值为()。选项:A、10B、21C、14D、24正确答案:【14】4、问题:以下说法不正确的是()。选项:A、赋值语句翻译的主要任务是生成对表达式求值的三地址码B、在增量翻译方法中,gen()函数不仅要构造出一个新的三地址指令,还要将它添加到至今为止已生成的指令序列之后C、如果一个赋值语句中涉及到数组元素,那么将该语句翻译成三地址码时要解决的主要问题是确定数组元素的存放地址,也就是数组元素的寻址D、数组元素的地址计算与数组的存储方式无关正确答案:【数组元素的地址计算与数组的存储方式无关】5、问题:数组元素的地址由两部分构成,一部分是基地址,另一部分是偏移量。选项:A、正确B、错误正确答案:【正确】6、问题:数组元素的地址由两部分构成,一部分是基地址,另一部分是偏移量。选项:A、正确B、错误正确答案:【正确】7、问题:基地址通过查符号表即可获得。选项:A、正确B、错误正确答案:【正确】8、问题:数组元素的偏移地址的计算只取决于数组的下标。选项:A、正确B、错误正确答案:【错误】9、问题:设计数组引用的SDT的关键问题是:如何将地址计算公式和数组引用的文法关联起来。选项:A、正确B、错误正确答案:【正确】本讲模拟练习题(不计分)1、问题:关于布尔表达式的叙述,不正确的是()。选项:A、布尔常量是布尔表达式B、布尔常量不是布尔表达式C、关系表达式是布尔表达式D、将括号和逻辑运算符作用于布尔表达式得到一个新的布尔表达式正确答案:【布尔常量不是布尔表达式】2、问题:以下说法不正确的是()。选项:A、为布尔表达式和控制流语句生成目标代码时,关键问题之一是确定跳转指令的目标标号B、在生成跳转指令时,就可以确定目标标号C、在生成跳转指令时,目标标号还不能确定D、可以将标号的地址作为继承属性传递到生成相关跳转指令的地方,但是这样的做法需要再进行一趟处理,将标号和具体地址绑定起来正确答案:【在生成跳转指令时,就可以确定目标标号】3、问题:令非终结符B表示布尔表达式,为B设置两个继承属性true和false。B.true是一个地址,该地址中存放了当B为真时控制流转向的指令的标号;B.false也是一个地址,该地址中存放了当B为假时控制流转向的指令的标号,则下列SDT中不正确的是()。选项:A、B→true{gen(‘goto’B.true);}B、B→false{gen(‘goto’B.false);}C、D、正确答案:【】4、问题:令非终结符B表示布尔表达式,为B设置两个继承属性true和false。B.true是一个地址,该地址中存放了当B为真时控制流转向的指令的标号;B.false也是一个地址,该地址中存放了当B为假时控制流转向的指令的标号,则下列SDT中不正确的是()。选项:A、B→true{gen(‘goto’B.true);}B、B→false{gen(‘goto’B.false);}C、D、正确答案:【】5、问题:在分支和循环中会用到条件式,而用作条件式的通常是布尔表达式。选项:A、正确B、错误正确答案:【正确】6、问题:在控制流语句的翻译中,布尔表达式B被翻译成由跳转指令构成的跳转代码。选项:A、正确B、错误正确答案:【正确】7、问题:逻辑运算符、||和!会出现在代码中。选项:A、正确B、错误正确答案:【错误】第13讲测验(计分)1、问题:关于布尔表达式的叙述,不正确的是()。选项:A、布尔常量是布尔表达式B、布尔常量不是布尔表达式C、关系表达式是布尔表达式D、将括号和逻辑运算符作用于布尔表达式得到一个新的布尔表达式正确答案:【布尔常量不是布尔表达式】2、问题:以下说法不正确的是()。选项:A、为布尔表达式和控制流语句生成目标代码时,关键问题之一是确定跳转指令的目标标号B、在生成跳转指令时,就可以确定目标标号C、在生成跳转指令时,目标标号还不能确定D、可以将标号的地址作为继承属性传递到生成相关跳转指令的地方,但是这样的做法需要再进行一趟处理,将标号和具体地址绑定起来正确答案:【在生成跳转指令时,就可以确定目标标号】3、问题:令非终结符B表示布尔表达式,为B设置两个继承属性true和false。B.true是一个地址,该地址中存放了当B为真时控制流转向的指令的标号;B.false也是一个地址,该地址中存放了当B为假时控制流转向的指令的标号,则下列SDT中不正确的是()。选项:A、B→true{gen(‘goto’B.true);}B、B→false{gen(‘goto’B.false);}C、D、正确答案:【】4、问题:令非终结符B表示布尔表达式,为B设置两个继承属性true和false。B.true是一个地址,该地址中存放了当B为真时控制流转向的指令的标号;B.false也是一个地址,该地址中存放了当B为假时控制流转向的指令的标号,则下列SDT中不正确的是()。选项:A、B→true{gen(‘goto’B.true);}B、B→false{gen(‘goto’B.false);}C、D、正确答案:【】5、问题:逻辑运算符、||和!会出现在代码中。选项:A、正确B、错误正确答案:【错误】6、问题:在跳转代码中,逻辑运算符、||和!被翻译成跳转指令。选项:A、正确B、错误正确答案:【正确】7、问题:在控制流语句的翻译中,布尔表达式B被翻译成由跳转指令构成的跳转代码。选项:A、正确B、错误正确答案:【正确】8、问题:在分支和循环中会用到条件式,而用作条件式的通常是布尔表达式。选项:A、正确B、错误正确答案:【正确】本讲模拟练习题(不计分)1、问题:令非终结符B表示布尔表达式。在布尔表达式的回填技术中,为非终结符B设置两个综合属性:B.truelist:指向一个包含跳转指令的列表,这些指令最终获得的目标标号就是当B为真时控制流应该转向的指令的标号;B.falselist:指向一个包含跳转指令的列表,这些指令最终获得的目标标号就是当B为假时控制流应该转向的指令的标号。则下列SDT中不正确的是()。选项:A、{}B、{}C、{}D、{}正确答案:【{}】2、问题:在下面的语句中,()不需要回填技术。选项:A、赋值语句B、goto语句C、条件语句D、循环语句正确答案:【赋值语句】3、问题:四元式之间的联系是通过()实现的。选项:A、指示器B、临时变量C、符号表D、程序变量正确答案:【临时变量】4、问题:四元式表示法的优点为()。选项:A、不便于优化处理,但便于表的更动B、不便于优化处理,但节省存储空间C、便于优化处理,也便于表的更动D、便于表的更动,也节省存储空间正确答案:【便于优化处理,也便于表的更动】5、问题:在回填技术中,生成一个跳转指令时,暂时不指定该跳转指令的目标标号。选项:A、正确B、错误正确答案:【正确】6、问题:在回填技术中,同一个列表list中的跳转指令具有相同的目标标号。选项:A、正确B、错误正确答案:【正确】7、问题:在回填技术中,同一个列表list中的跳转指令可能具有不同的目标标号。选项:A、正确B、错误正确答案:【错误】8、问题:在回填技术中,等到能够确定正确的目标标号时,才去填充指令的目标标号。选项:A、正确B、错误正确答案:【正确】第14讲测验(计分)1、问题:令非终结符B表示布尔表达式。在布尔表达式的回填技术中,为非终结符B设置两个综合属性:B.truelist:指向一个包含跳转指令的列表,这些指令最终获得的目标标号就是当B为真时控制流应该转向的指令的标号;B.falselist:指向一个包含跳转指令的列表,这些指令最终获得的目标标号就是当B为假时控制流应该转向的指令的标号。则下列SDT中不正确的是()。选项:A、{}B、{}C、{}D、{}正确答案:【{}】2、问题:在下面的语句中,()不需要回填技术。选项:A、赋值语句B、goto语句C、条件语句D、循环语句正确答案:【赋值语句】3、问题:四元式之间的联系是通过()实现的。选项:A、指示器B、临时变量C、符号表D、程序变量正确答案:【临时变量】4、问题:四元式表示法的优点为()。选项:A、不便于优化处理,但便于表的更动B、不便于优化处理,但节省存储空间C、便于优化处理,也便于表的更动D、便于表的更动,也节省存储空间正确答案:【便于优化处理,也便于表的更动】5、问题:在回填技术中,生成一个跳转指令时,暂时不指定该跳转指令的目标标号。选项:A、正确B、错误正确答案:【正确】6、问题:在回填技术中,同一个列表list中的跳转指令具有相同的目标标号。选项:A、正确B、错误正确答案:【正确】7、问题:在回填技术中,同一个列表list中的跳转指令可能具有不同的目标标号。选项:A、正确B、错误正确答案:【错误】8、问题:在回填技术中,等到能够确定正确的目标标号时,才去填充指令的目标标号。选项:A、正确B、错误正确答案:【正确】本讲模拟练习题(不计分)1、问题:在目标代码生成阶段,符号表用于()。选项:A、目标代码生成B、语义检查C、语法检查D、地址分配正确答案:【地址分配】2、问题:PASCAL语言中过程声明的局部变量地址分配在()。选项:A、调用者的数据区中B、被调用者的数据区中C、主程序的数据区中D、公共数据区中正确答案:【被调用者的数据区中】3、问题:编译方法中,动态存储分配的含义是()。选项:A、在编译阶段为源程序中的量进行分配B、在编译阶段为源程序中的量进行分配,运行时可动态调整C、在运行阶段为源程序中的量进行分配D、都不正确正确答案:【在运行阶段为源程序中的量进行分配】4、问题:运行阶段的存储组织与管理的目的是()。选项:A、提高编译程序的运行速度B、为运行阶段的存储分配做准备及提高目标程序的运行速度C、优化运行空间的管理D、节省内存空间正确答案:【为运行阶段的存储分配做准备及提高目标程序的运行速度】5、问题:以下说法正确的是()。选项:A、对于数据空间的存贮分配,FORTRAN采用动态贮存分配策略B、对于数据空间的存贮分配,C语言仅采用栈式贮存分配策略C、动态存储分配是指在编译阶段对源程序中的量进行分配,以使目标代码在运行时加快运行速度D、如果两个临时变量的作用域不相交,则可以将它们分配在同一单元中正确答案:【如果两个临时变量的作用域不相交,则可以将它们分配在同一单元中】6、问题:以下说法正确的是()。选项:A、编译程序除解决源程序中用户定义的量在运行时刻的存储组织与分配问题之外,还应完成为临时变量和参与运算的寄存器组织好存储空间的任务B、由于C语言的函数允许递归调用,因此对C语言中的所有变量的单元分配一律采用动态分配方式C、动态数组的存储空间在编译时即可完全确定D、“运算符与运算对象类型不符”属于语法错误正确答案:【编

温馨提示

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

评论

0/150

提交评论