文档库 最新最全的文档下载
当前位置:文档库 › 编译技术习题2

编译技术习题2

编译技术习题2
编译技术习题2

《编译技术》习题2

一、单项选择题

1.编译程序使用()区别标识符的作用域。

A、标识符的行号

B、说明标识符的过程或函数名

C、说明标识符的过程或函数的静态层次

D、说明标识符的过程或函数的动态层次

2.()不是NFA的成分。

A、有穷字母表

B、初始状态集合

C、终结状态集合

D、有限状态集合

3.高级语言编译程序常用的语法分析方法中,递归下降分析法属于()分析方法。

A、自顶向下

B、自底向上

C、自左向右

D、自右向左

4.LR语法分析栈中存放的状态是识别()的DFA状态。

A、前缀

B、活前缀

C、项目

D、句柄

5.编译程序中的语法分析器接受以()为单位的输入,并产生有关信息供以后各阶段使用。

A、表达式

B、产生式

C、单词

D、语句

6.在LR分析法中,分析栈中存放的状态是识别规范句型()的DFA状态。

A、句柄

B、前缀

C、活前缀

D、LR(0)项目

7.文法G所描述的语言是()的集合。

A、文法G的字母表V中所有符号组成的符号串

B、文法G的字母表V的闭包V*中的所有符号串

C、由文法的开始符号推出的所有终极符串

D、由文法的开始符号推出的所有符号串

8.()和代码优化部分不是每个编译程序都必需的。

A、语法分析

B、中间代码生成

C、词法分析

D、目标代码生成

9.以下中间代码的表示形式中,()更便于优化。

A、三元式

B、四元式

C、树

D、后缀式

10.编译程序使用()区别标识符的作用域。

A、说明标识符的过程或函数名

B、说明标识符的过程或函数的静态层次

C、说明标识符的过程或函数的动态层次

D、标识符的行号

D、标识符的行号

二、多项选择题

1.过程调用时,参数的传递方法通常有()。

A、传值

B、传地址

C、传结果

D、传名

2.在编译程序采用的优化方法中,()是在循环语句范围内进行的。

A、删除多余运算

B、删除归纳变量

C、强度削弱

D、代码外提

3.语法分析的常用方法是()。

A、自顶向下

B、自底向上

C、自左向右

D、自左向右

4.栈式动态分配允许()。

A、递归过程

B、分程序结构

C、动态变量

D、动态数组

E、静态数组

5.如果a→b是程序流图中的一条边,则由这条回边构成的循环由()结点组成。

A、a

B、b

C、有通路到达b的结点

D、有通路到达a且该通路上不经过b的结点

E、有通路到达b且该通路上不经过a的结点

三、判断题(正确填“T”,错误填“F”)

1.LL(1)分析方法对文法没有限制。()

2.在递归下降语法分析中,文法不能含有左递归规则和右递归规则。()3.正规文法、正规表达式、有限自动机这三者之间在某种意义下是互相等价的。()

4.对于数据空间的存贮分配,FORTRAN采用动态贮存分配策略。()

5.逆波兰法表示的表达式亦称后缀式。()

6.简单优先文法允许任意两个产生式具有相同右部。()

7.计算机高级语言翻译成低级语言只有解释一种方式。()

四、填空题

1.程序语言的单词符号一般可以分为___、___、___和___等等。

2.对编译程序而言,输入数据是___,输出结果是___。

3.常用的两种动态存贮分配办法是___动态分配和___动态分配。

4.对程序中各个语法成分含义的描述称为___。

5.局部优化是局限于一个___范围内的一种优化。

6.从功能上说,程序语言的语句大体可分为______语句和______语句两大类。7.扫描器是______,它接受输入的______,对源程序进行______并识别出一个个单词符号,其输出结果是单词符号,供语法分析器使用。

8.编译方式与解释方式的根本区别在于______。

《编译技术》习题2答案一、单项选择题

二、多项选择题

三、判断题(正确填“T”,错误填“F”)

四、填空题

1、基本字标示符算符界符

2、源程序目标程序

3、栈式堆式

4、语义

5、基本块

6、执行性说明性

7、词法分析器源程序词法分析

8、是否生成目标代码

《 编译原理》(习题课)(第二章)

朱雪峰第一题(P35 第4题) 4.令+、*和↑代表加、乘和乘幂,按如下的非标准优先级和结合性质的约定,计算1+1*2↑2*1↑2的值: ①优先顺序(从高至低)为+、*和↑,同级优先采用左结合。 ②优先顺序(从高至低)为↑、+和*,同级优先采用右结合。

朱雪峰第一题(P35 第4题) 解: ① 1+1*2↑2*1↑2 =2*2↑2*1↑2 =4 ↑2*1↑2 =4 ↑2↑2 =16 ↑2=256(+、*和↑,左结合)② 1+1*2↑2*1↑2 = 1+1* 4 *1↑2= 1+1* 4 *1= 2* 4*1=2*4=8(↑、+和*,右结合)

朱雪峰第二题(P36 第6题) 6.令文法G 6为 N →D | ND D →0|1|2|3|4|5|6|7|8|9 ①G 6的语言L(G 6)是什么? ②给出句子0127、34和568的最左推导和最右推导。

朱雪峰第二题(P36 第6题) 解: ① 根据产生式N →D | ND 可以看出,N 最终可以推出1个或多个(可以是无穷多个)D ,根据产生式D →0|1|2 |3|4|5|6|7|8|9可以看出,每个D 可以推导出0~9中的某一个数字。因此,N 最终推导出的就是由0~9这10个数字组成的字符串。因此G6的语言L(G6)就是由0~9这10个数字组成的字符串。

朱雪峰第二题(P36 第6题) ②句子0127、34和568的最左推导如下: N ?ND ?NDD ?NDDD ?DDDD ?0DDD ?01DD ?012D ?0127 N ?ND ?DD ?3D ?34 N ?ND ?NDD ?DDD ?5DD ?56D ?568

《编译原理》模拟期末试题汇总 6套,含答案

《编译原理》模拟试题一 一、是非题(请在括号内,正确的划√,错误的划×)(每个2分,共20分) 1.计算机高级语言翻译成低级语言只有解释一种方式。(×) 2.在编译中进行语法检查的目的是为了发现程序中所有错误。(×) 3.甲机上的某编译程序在乙机上能直接使用的必要条件是甲机和乙机的操作系统功能完全相同。 (√ ) 4.正则文法其产生式为 A->a , A->Bb, A,B∈VN , a 、b∈VT 。 (×) 5.每个文法都能改写为 LL(1) 文法。 (√) 6.递归下降法允许任一非终极符是直接左递归的。 (√) 7.算符优先关系表不一定存在对应的优先函数。 (×) 8.自底而上语法分析方法的主要问题是候选式的选择。 (×) 9.LR 法是自顶向下语法分析方法。 (×) 10.简单优先文法允许任意两个产生式具有相同右部。 (×) 二、选择题(请在前括号内选择最确切的一项作为答案划一个勾,多划按错论)(每个4分,共40分) 1.一个编译程序中,不仅包含词法分析,_____,中间代码生成,代码优化,目标代码生成等五个部分。 A.( ) 语法分析B.( )文法分析C.( )语言分析D.( )解释分析 2.词法分析器用于识别_____。 A.( ) 字符串B.( )语句 C.( )单词 D.( )标识符 3.语法分析器则可以发现源程序中的_____。 A.( ) 语义错误 B.( ) 语法和语义错误 C.( ) 错误并校正D.( ) 语法错误 4.下面关于解释程序的描述正确的是_____。

(1) 解释程序的特点是处理程序时不产生目标代码 (2) 解释程序适用于 COBOL 和 FORTRAN 语言 (3) 解释程序是为打开编译程序技术的僵局而开发的 A.( ) (1)(2) B.( ) (1)C.( ) (1)(2)(3) D.( ) (2)(3) 5.解释程序处理语言时 , 大多数采用的是_____方法。 A.( ) 源程序命令被逐个直接解释执行 B.( ) 先将源程序转化为中间代码 , 再解释执行 C.( ) 先将源程序解释转化为目标程序 , 再执行 D.( ) 以上方法都可以 6.编译过程中 , 语法分析器的任务就是_____。 (1) 分析单词是怎样构成的 (2) 分析单词串是如何构成语句和说明的 (3) 分析语句和说明是如何构成程序的 (4) 分析程序的结构 A.( ) (2)(3) B.( ) (2)(3)(4) C.( ) (1)(2)(3) D.( ) (1)(2)(3)(4) 7.编译程序是一种_____。 A. ( ) 汇编程序B.( ) 翻译程序 C.( ) 解释程序 D.( ) 目标程序 8.文法 G 所描述的语言是_____的集合。 A. ( ) 文法 G 的字母表 V 中所有符号组成的符号串 B.( ) 文法 G 的字母表 V 的闭包 V* 中的所有符号串 C.( ) 由文法的开始符号推出的所有终极符串 D. ( ) 由文法的开始符号推出的所有符号串 9.文法分为四种类型,即0型、1型、2型、3型。其中3型文法是_____。 A. ( ) 短语文法 B.( ) 正则文法 C.( ) 上下文有关文法 D.( ) 上下文无关文法 10.一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组 _____。 A.( ) 句子B.( ) 句型 C.( ) 单词 D.( ) 产生式 三、填空题(每空1分,共10分)

最新编译原理试题汇总+编译原理期末试题(8套含答案+大题集)

编译原理考试题及答案汇总一、选择 1.将编译程序分成若干个“遍”是为了_B__。 A . 提高程序的执行效率 B.使程序的结构更加清晰 C. 利用有限的机器内存并提高机器的执行效率 D.利用有限的机器内存但降低了机器的执行效率 2.正规式 MI 和 M2 等价是指__C__。 A . MI 和 M2 的状态数相等 B.Ml 和 M2 的有向弧条数相等。 C .M1 和 M2 所识别的语言集相等 D. Ml 和 M2 状态数和有向弧条数相等 3.中间代码生成时所依据的是 _C_。 A.语法规则 B.词法规则 C.语义规则 D.等价变换规则 4.后缀式 ab+cd+/可用表达式__B_来表示。 A. a+b/c+d B.(a+b)/(c+d) C. a+b/(c+d) D. a+b+c/d 6.一个编译程序中,不仅包含词法分析,_A____,中间代码生成,代码优化,目标代码生成等五个部分。 A.( ) 语法分析 B.( )文法分析 C.( )语言分析 D.( )解释分析 7.词法分析器用于识别__C___。 A.( ) 字符串 B.( )语句 C.( )单词 D.( )标识符 8.语法分析器则可以发现源程序中的___D__。 A.( ) 语义错误 B.( ) 语法和语义错误 C.( ) 错误并校正 D.( ) 语法错误 9.下面关于解释程序的描述正确的是__B___。 (1) 解释程序的特点是处理程序时不产生目标代码 (2) 解释程序适用于 COBOL 和 FORTRAN 语言 (3) 解释程序是为打开编译程序技术的僵局而开发的 A.( ) (1)(2) B.( ) (1) C.( ) (1)(2)(3) D.( ) (2)(3) 10.解释程序处理语言时 , 大多数采用的是__B___方法。 A.( ) 源程序命令被逐个直接解释执行 B.( ) 先将源程序转化为中间代码 , 再解释执行 C.( ) 先将源程序解释转化为目标程序 , 再执行 D.( ) 以上方法都可以 11.编译过程中 , 语法分析器的任务就是__B___。 (1) 分析单词是怎样构成的 (2) 分析单词串是如何构成语句和说明的 (3) 分析语句和说明是如何构成程序的 (4) 分析程序的结构 A.( ) (2)(3) B.( ) (2)(3)(4)C.( ) (1)(2)(3) D.( ) (1)(2)(3)(4) 12.编译程序是一种___C__。 A. ( ) 汇编程序 B.( ) 翻译程序 C.( ) 解释程序 D.( ) 目标程序 13.文法 G 所描述的语言是_C____的集合。 A. ( ) 文法 G 的字母表 V 中所有符号组成的符号串 B.( ) 文法 G 的字母表 V 的闭包 V* 中的所有符号串 C.( ) 由文法的开始符号推出的所有终极符串 D. ( ) 由文法的开始符号推出的所有符号串 14.文法分为四种类型,即 0 型、1 型、2 型、3 型。其中 3 型文法是___B__。 A. ( ) 短语文法 B.( ) 正则文法 C.( ) 上下文有关文法 D.( ) 上下文无关文法15.一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组 __D___。 A.( ) 句子 B.( ) 句型 C.( ) 单词 D.( ) 产生式

蒋立源 编译原理第三版第二章 习题与答案(修改后)

第2章习题 2-1 设有字母表A1 ={a,b,c,…,z},A2 ={0,1,…,9},试回答下列问题: (1) 字母表A1上长度为2的符号串有多少个? (2) 集合A1A2含有多少个元素? (3) 列出集合A1(A1∪A2)*中的全部长度不大于3的符号串。 2-2 试分别构造产生下列语言的文法: (1){a n b n|n≥0}; (2){a n b m c p|n,m,p≥0}; (3){a n#b n|n≥0}∪{c n#d n|n≥0}; (4){w#w r# | w∈{0,1}*,w r是w的逆序排列 }; (5)任何不是以0打头的所有奇整数所组成的集合; (6)所有由偶数个0和偶数个1所组成的符号串的集合。 2-3 试描述由下列文法所产生的语言的特点: (1)S→10S0S→aA A→bA A→a (2)S→SS S→1A0A→1A0A→ε (3)S→1A S→B0A→1A A→C B→B0B→C C→1C0C→ε (4)S→aSS S→a 2-4 试证明文法 S→AB|DC A→aA|a B→bBc|bc C→cC|c D→aDb|ab 为二义性文法。 2-5 对于下列的文法 S→AB|c A→bA|a B→aSb|c 试给出句子bbaacb的最右推导,并指出各步直接推导所得句型的句柄;指出句子的全部短语。

2-6 化简下列各个文法 (1) S→aABS|bCACd A→bAB|cSA|cCC B→bAB|cSB C→cS|c (2) S→aAB|E A→dDA|e B→bE|f C→c AB|dSD|a D→eA E→fA|g (3) S→ac|bA A→c BC B→SA C→bC|d 2-7 消除下列文法中的ε-产生式 (1) S→aAS|b A→cS|ε (2) S→aAA A→bAc|dAe|ε 2-8 消除下列文法中的无用产生式和单产生式 (1) S→aB|BC A→aA|c|aDb B→DB|C C→b D→B (2) S→SA|SB|A A→B|(S)|( ) B→[S]|[ ] (3) E→E+T|T T→T*F|F F→P↑F|P P→(E)|i 第2章习题答案 2-1 答: (1) 26*26=676 (2) 26*10=260 (3) {a,b,c,...,z, a0,a1,...,a9, aa,...,az,...,zz, a00,a01,...,zzz},共有26+26*36+26*36*36=34658个 2-2 解: (1) 对应文法为G(S)=({S},{a,b},{ S→ε| aSb },S) (2) 对应文法为G(S)=({S,X,Y},{a,b,c},{S→aS|X,X→bX|Y,Y→cY|ε },S) (3)对应文法为G(S)=({S,X,Y},{a,b,c,d,#}, {S→X,S→Y,X→aXb|#, Y→cYd|# },S)

编译原理模拟试卷和答案

北京语言大学网络教育学院 《编译原理》模拟试卷一 注意: 1.试卷保密,考生不得将试卷带出考场或撕页,否则成绩作废。请监考老师负责监督。 2.请各位考生注意考试纪律,考试作弊全部成绩以零分计算。 3.本试卷满分100分,答题时间为90分钟。 4.本试卷分为试题卷和答题卷,所有答案必须答在答题卷上,答在试题卷上不给分。 一、【单项选择题】(本大题共10小题,每小题2分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在答题卷相应题号处。 1、一个编译程序中,包含词法分析、()、中间代码生成、代码优化、目标代码生成等五个部分。 [A] 语法分析[B] 文法分析[C] 语言分析[D] 解释分析 2、词法分析器用于识别()。 [A] 字符串[B] 语句[C] 单词[D] 标识符 3、语法分析器则可以发现源程序中的()。 [A] 语义错误[B] 语法和语义错误 [C] 错误并校正[D] 语法错误 4、下面关于解释程序的描述正确的是()。 (1) 解释程序的特点是处理程序时不产生目标代码。 (2) 解释程序适用于COBOL 和FORTRAN 语言。 (3) 解释程序是为打开编译程序技术的僵局而开发的。 [A] (1)(2)[B] (1)[C] (1)(2)(3)[D] (2)(3) 5、解释程序处理语言时, 大多数采用的是()方法。 [A] 源程序命令被逐个直接解释执行 [B] 先将源程序转化为中间代码, 再解释执行 [C] 先将源程序解释转化为目标程序, 再执行 [D] 以上方法都可以 6、编译过程中, 语法分析器的任务就是()。 (1) 分析单词是怎样构成的 (2) 分析单词串是如何构成语句和说明的 (3) 分析语句和说明是如何构成程序的 (4) 分析程序的结构 [A] (2)(3)[B] (2)(3)(4)[C] (1)(2)(3)[D] (1)(2)(3)(4) 7、编译程序是一种()。

编译原理复习题及答案

编译原理复习题及答案 一、选择题 1.一个正规语言只能对应(B) A 一个正规文法 B 一个最小有限状态自动机 2.文法G[A]:A→εA→aB B→Ab B→a是(A) A 正规文法 B 二型文法 3.下面说法正确的是(A) A 一个SLR(1)文法一定也是LALR(1)文法 B 一个LR(1)文法一定也是LALR(1)文法 4.一个上下文无关文法消除了左递归,提取了左公共因子后是满足LL(1)文法的(A) A 必要条件 B 充分必要条件 5.下面说法正确的是(B) A 一个正规式只能对应一个确定的有限状态自动机 B 一个正规语言可能对应多个正规文法 6.算符优先分析与规范归约相比的优点是(A) A 归约速度快 B 对文法限制少 7.一个LR(1)文法合并同心集后若不是LALR(1)文法(B) A 则可能存在移进/归约冲突 B 则可能存在归约/归约冲突 C 则可能存在移进/归约冲突和归约/归约冲突 8.下面说法正确的是(A) A Lex是一个词法分析器的生成器 B Yacc是一个语法分析器 9.下面说法正确的是(A) A 一个正规文法也一定是二型文法 B 一个二型文法也一定能有一个等价的正规文法 10.编译原理是对(C)。 A、机器语言的执行 B、汇编语言的翻译 C、高级语言的翻译 D、高级语言程序的解释执行 11.(A)是一种典型的解释型语言。

A.BASIC B.C C.FORTRAN D.PASCAL 12.把汇编语言程序翻译成机器可执行的目标程序的工作是由(B)完成的。 A. 编译器 B. 汇编器 C. 解释器 D. 预处理器 13.用高级语言编写的程序经编译后产生的程序叫(B) A.源程序 B.目标程序C.连接程序D.解释程序 14.(C)不是编译程序的组成部分。 A.词法分析程序 B.代码生成程序 C.设备管理程序 D.语法分析程序 15.通常一个编译程序中,不仅包含词法分析,语法分析,语义分析,中间代码生成,代码优化,目标代码生成等六个部分,还应包括(C)。 A.模拟执行器B.解释器 C.表格处理和出错处理D.符号执行器16.编译程序绝大多数时间花在(D)上。 A.出错处理B.词法分析C.目标代码生成D.表格管理 17.源程序是句子的集合,(B)可以较好地反映句子的结构。 A. 线性表 B. 树 C. 完全图 D. 堆栈 18.词法分析器的输出结果是(D)。 A、单词自身值 B、单词在符号表中的位置 C、单词的种别编码 D、单词的种别编码和自身值 19.词法分析器不能(D) A. 识别出数值常量 B. 过滤源程序中的注释 C. 扫描源程序并识别记号 D. 发现括号不匹配 20.文法:G:S→xSx | y所识别的语言是(D)。 A、xyx B、(xyx)* C、x*yx* D、x n yx n (n≥0) 21.如果文法G是无二义的,则它的任何句子α(A) A.最左推导和最右推导对应的语法树必定相同 B.最左推导和最右推导对应的语法树可能不同 C.最左推导和最右推导必定相同 D.可能存在两个不同的最左推导,但它们对应的语法树相同 22.正则文法(A)二义性的。 A. 可以是 B. 一定不是 C. 一定是 23.(B)这样一些语言,它们能被确定的有穷自动机识别,但不能用正则表达式表示。 A. 存在 B. 不存在 C. 无法判定是否存在 24.给定文法A→bA | ca,为该文法句子的是(C) A. bba B. cab C. bca D. cba

医学影像学题库及答案

医学影像学题库及答案 第一章总论 一、填空题 1、医学影像学包括、、、和等项内容。 2、X线具有穿透性、、和、和电离效应等特性,它们分别 是、、和基础。 X线穿透性 受、和的影响。 3、在阅片时, 应分析病变的要点是、、 、、、和等。 4、人体组织器官有不同的和差,使透过人体后的剩余X线量不均匀。 5、人为引入一种物质到人体器官或间隙使其产生密度差异而形成的对比称对比。引入的这种物质称引入这种物质的方法称。 6、X线图像特点包括、、和等。 7、数字X线成像包括、和。 8、水的CT值为 HU,骨皮质的CT值约为 HU,空气的CT值约为 HU 9、在T1加权像上水和大部病变(如肿瘤.炎症.变性.坏死.液化.水肿)为即长T1信号。T1加权像上的即短T1信号通常为脂肪和亚急性血肿。在T2加权像上,水和大部分病变呈高信号即信号。

二、名词解释 人工对比自然对比 CT MRI PACS 介入放射学 CR DDR CT值 T1 T2 MRA T1WI T2WI

三、选择题(可单选或多选) 1、摄胸部平片显示心肺等结构属于()。 A、人工对比 B、天然对比 C、造影检查 D、特殊检查 2、最适合心血管造影的造影剂()。 A、硫酸钡 B、泛影葡胺 C、欧乃派克 D、碘化油 3、X线图像显示的不同灰度与X线透过的物质密度的关系是()。 A、物质密度高,吸收X线量多,显白影 B、物质密度低,吸收X线量少,显黑影 C、物质密度高,吸收X线量少,显黑影 D、物质密度低,吸收X线量多,显白影 4、CT值为负值可能为() A、脂肪 B、气体 C、肌肉组织 D、血液 5、数字X线成像特点是() A、数字化图像,清晰度、分辨率高,对比好。 B、曝光宽容度大: C、X线剂量低: D、多种后处理功能:调整窗位窗宽、图像放大等。 6、骨皮质在MRI图像上的表现正确的是() A、长T2信号 B、长T1信号 C、短T2信号 D、短T1信号 7、MRI在哪些方面优于CT() A、脑垂体病变 B、脊髓病变 C、肺内病变 D、关节积液 8、有关磁共振成像特点正确的是() A、磁共振信号高低与密度无关。 B、无骨伪影干扰 C、体内顺磁性金属异物不影响图像失真 D、自旋回波序列血管内流动的血液无信号

编译原理 第二章习题答案

第2章习题解答 1.文法G[S]为: S->Ac|aB A->ab B->bc 写出L(G[S])的全部元素。 [答案] S=>Ac=>abc 或S=>aB=>abc 所以L(G[S])={abc} ============================================== 2. 文法G[N]为: N->D|ND D->0|1|2|3|4|5|6|7|8|9 G[N]的语言是什么? [答案] G[N]的语言是V+。V={0,1,2,3,4,5,6,7,8,9} N=>ND=>NDD.... =>NDDDD...D=>D......D =============================================== 3.已知文法G[S]: S→dAB A→aA|a B→ε|bB 问:相应的正规式是什么?G[S]能否改写成为等价的正规文法?[答案] 正规式是daa*b*;

相应的正规文法为(由自动机化简来): G[S]:S→dA A→a|aB B→aB|a|b|bC C→bC|b 也可为(观察得来):G[S]:S→dA A→a|aA|aB B→bB|ε ===================================================================== ========== 4.已知文法G[Z]: Z->aZb|ab 写出L(G[Z])的全部元素。 [答案] Z=>aZb=>aaZbb=>aaa..Z...bbb=> aaa..ab...bbb L(G[Z])={a n b n|n>=1} ===================================================================== ========= 5.给出语言{a n b n c m|n>=1,m>=0}的上下文无关文法。 [分析] 本题难度不大,主要是考上下文无关文法的基本概念。上下文无关文法的基本定义是:A->β,A∈Vn,β∈(Vn∪Vt)*,注意关键问题是保证a n b n的成立,即“a与b的个数要相等”,为此,可以用一条形如A->aAb|ab的产生式即可解决。 [答案] 构造上下文无关文法如下: S->AB|A A->aAb|ab B->Bc|c [扩展]

最新编译原理复习题(经典)

编译原理复习题 一、是非题 1.计算机高级语言翻译成低级语言只有解释一种方式。(×) 3.每个文法都能改写为 LL(1) 文法。 (×) 4.算符优先关系表不一定存在对应的优先函数。 (√) 5.LR分析方法是自顶向下语法分析方法。 (×) 6.“ 用高级语言书写的源程序都必须通过编译,产生目标代码后才能投入运行”这种说法。(× ) 7.一个句型的句柄一定是文法某产生式的右部。(√) 8.仅考虑一个基本块,不能确定一个赋值是否真是无用的。(√ ) 9.在中间代码优化中循环上的优化主要有不变表达式外提和削减运算强度。(× ) 10.对于数据空间的存贮分配,FORTRAN采用动态贮存分配策略。(×) 11.甲机上的某编译程序在乙机上能直接使用的必要条件是甲机和乙机的操作系统功能完全相同。(× ) 12.递归下降分析法是自顶向下分析方法。(√ ) 13.产生式是用于定义词法成分的一种书写规则。(×) 14.在SLR(1)分析法的名称中,S的含义是简单的。(√) 15.综合属性是用于“ 自上而下” 传递信息。(× ) 16.符号表中的信息栏中登记了每个名字的属性和特征等有关信息,如类型、种属、所占单元大小、地址等等。(×) 17.程序语言的语言处理程序是一种应用软件。(×) 18.解释程序适用于COBOL 和FORTRAN 语言。(×) 19.一个LL(l)文法一定是无二义的。(√) 20.正规文法产生的语言都可以用上下文无关文法来描述。(√) 21.一张转换图只包含有限个状态,其中有一个被认为是初态,最多只有一个终态。(×) 22.目标代码生成时,应考虑如何充分利用计算机的寄存器的问题。(√) 22.逆波兰法表示的表达式亦称后缀式。(√ ) 23.如果一个文法存在某个句子对应两棵不同的语法树,则称这个文法是二义的。(√ ) 24.数组元素的地址计算与数组的存储方式有关。(√) 25.算符优先关系表不一定存在对应的优先函数。(×) 26.编译程序是对高级语言程序的解释执行。(× ) 27.一个有限状态自动机中,有且仅有一个唯一的终态。(×) 28.一个算符优先文法可能不存在算符优先函数与之对应。(√ ) 29.语法分析时必须先消除文法中的左递归。(×) 30.LR分析法在自左至右扫描输入串时就能发现错误,但不能准确地指出出错地点。(√) 31.逆波兰表示法表示表达式时无须使用括号。(√ ) 32.静态数组的存储空间可以在编译时确定。(√) 33.进行代码优化时应着重考虑循环的代码优化,这对提高目标代码的效率将起更大作用。(√) 34.两个正规集相等的必要条件是他们对应的正规式等价。(√) 35.一个语义子程序描述了一个文法所对应的翻译工作。(×) 36.设r和s分别是正规式,则有L(r|s)=L(r)L(s)。(×) 37.确定的自动机以及不确定的自动机都能正确地识别正规集。(√) 38.词法分析作为单独的一遍来处理较好。(× ) 39.构造LR分析器的任务就是产生LR分析表。(√) 40.规范归约和规范推导是互逆的两个过程。(√) 41.同心集的合并有可能产生新的“移进”/“归约”冲突。(× )

编译原理模拟试卷及答案

模拟试题二 发表日期:2009年6月5日编辑:admin 阅读数:240 一、是非题(下列各题,你认为正确的,请在题干的括号内打“√”,错的打“×”。每题1分,共5分) 1、算符优先关系表不一定存在对应的优先函数。 2、数组元素的地址计算与数组的存储方式有关。 3、仅考虑一个基本块,不能确定一个赋值是否真是无用的。 4、每个文法都能改写为LL(1)文法。 5、对于数据空间的存贮分配,FORTRAN采用动态贮存分配策略。 二、填空题(每题2分,共20分) 1、从功能上说,程序语言的语句大体可分为_______语句和______语句两大类。 2、扫描器的任务是从________中识别出一个个_______。 3、所谓最右推导是指:_______。 4、语法分析最常用的两类方法是________和_________分析法。 5、一个上下文无关文法所含四个组成部分是_______________。 6、所谓语法制导翻译方法是_____________________。 7、符号表中的信息栏中登记了每个名字的有关的性质,如_________等等。 8、一个过程相应的DISPLAY表的内容为________。 9、常用的两种动态存贮分配办法是_____动态分配和_____动态分配。 10、产生式是用于定义_____的一种书写规则。 三、名词解释(每题2分,共10分) 1、遍 2、无环路有向图(DAG) 3、语法分析

4、短语 5、后缀式 四、简述题(每题4分,共24分) 1、考虑下面程序 ………… Var a:integer; Procedure S(X); Var X:integer; Begin a:=a+1; X:=a+X End; Begin a:=5; S(a); Print(a) End. 试问:若参数传递方式分别采取传名和传值时,程序执行后输出a的值是什么? 2、画出Pascal中实数(不带正负号,可带指数部分)的状态转换图。 3、写出表达式(a+b*c)/(a+b)-d的逆波兰表示及三元式序列。 4、已知文法G(S) S→a|∧|(T)

哈工大编译原理习题及答案

1.1何谓源程序、目标程序、翻译程序、编译程序和解释程序?它们之间可能有何种关系? 1.2一个典型的编译系统通常由哪些部分组成?各部分的主要功能是什么? 1.3选择一种你所熟悉的程序设计语言,试列出此语言中的全部关键字,并通过上机使用该语言以判明这些关键字是否为保留字。 1.4选取一种你所熟悉的语言,试对它进行分析,以找出此语言中的括号、关键字END以及逗号有多少种不同的用途。 1.5试用你常用的一种高级语言编写一短小的程序,上机进行编译和运行,记录下操作步骤和输出信息,如果可能,请卸出中间代码和目标代码。 第一章习题解答 1.解:源程序是指以某种程序设计语言所编写的程序。目标程序是指编译程序(或解释程序)将 源程序处理加工而得的另一种语言(目标语言)的程序。翻译程序是将某种语言翻译成另一种语言的程序的统称。编译程序与解释程序均为翻译程序,但二者工作方法不同。解释程序的特点是并不先将高级语言程序全部翻译成机器代码,而是每读入一条高级语言程序语句,就用解释程序将其翻译成一段机器指令并执行之,然后再读入下一条语句继续进行解释、执行,如此反复。即边解释边执行,翻译所得的指令序列并不保存。编译程序的特点是先将高级语言程序翻译成机器语言程序,将其保存到指定的空间中,在用户需要时再执行之。即先翻译、后执行。 2.解:一般说来,编译程序主要由词法分析程序、语法分析程序、语义分析程序、中间代码生成 程序、代码优化程序、目标代码生成程序、信息表管理程序、错误检查处理程序组成。 3.解:C语言的关键字有:auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while。上述关键字在C语言中均为保留字。 4.解:C语言中括号有三种:{},[],()。其中,{}用于语句括号;[]用于数组;()用于函数(定 义与调用)及表达式运算(改变运算顺序)。C语言中无END关键字。逗号在C语言中被视为分隔符和运算符,作为优先级最低的运算符,运算结果为逗号表达式最右侧子表达式的值(如:(a,b,c,d)的值为d)。 5.略 第二章前后文无关文法和语言 21设有字母表A1={a,b,…,z},A2={0,1,…,9},试回答下列问题: (1) 字母表A1上长度为2的符号串有多少个? (2) 集合A1A2含有多少个元素? (3) 列出集合A1 (A1∪A2)*中的全部长度不大于3的符号串。

医学影像学试题及答案

医学影像学试卷 单选题,(共25小题,每小题4分) 1. 下列哪种方法为颅脑疾病诊断的基本方法:( ) A. 脑室造影 B. 计算机体层 C. 头颅平片 D. 磁共振成像 E. 脑血管造影 2. 形成正位肺门阴影最重要的的解剖结构是:( ) A. 淋巴组织 B. 支气管动脉 C. 支气管 D. 肺动脉 E. 肺静脉 3. 下列那项不是成骨肉瘤的X线表现:( ) A. 死骨形成 B. 骨膜反应 C. 软组织肿块 D. 溶骨性骨破坏 E. 瘤骨形成 4. 下述心脏大血管的X线测量其正常值及意义哪项是错误的:( ) A. 肺动脉段基线大于6cm为异常

B. 心脏面积增大百分比小于等于10%无意义 C. 右肺下肺动脉的宽径大小1cm为扩张 D. 心脏横径与胸廓横径之比,正常不超过0.52 E. 心脏横径正常平均11.75±0.93cm 5. 肾结核平片征象:( ) A. 肾影倒"八字"形 B. 肾影不清 C. 病侧"肾下垂" D. 肾区可见不规则钙化灶 E. 肾外形不光整 6. 摄胸片,投照条件适当,显影液温度25℃,显影时间5分钟,会造成:( ) A. 影像对比度欠佳 B. 以上都不是 C. 影像灰雾过高 D. 影像层次不清 E. 影像模糊 7. 摄小儿胸部X线片时,有如下情况,请您找出错误者:( ) A. 不能坐立的婴幼儿,不一定用立位摄影 B. 正常胸腺有时会与心脏增大混淆 C. 用大毫安、短时间 D. 正常也可见气管移位,如头颈的扭转 E. 呼气和吸气相摄片无明显差别

8. X线表现为肺血少,左、右肺门不对称,左侧〉右侧,肺动脉段呈直立样突起,最可靠的诊断是:( ) A. 动脉导管未闭 B. 肺动脉狭窄 C. 肺心病 D. 高血压性心脏病 E. 主动脉缩窄 9. 急性化脓性骨髓炎的病理变化特点是:( ) A. 以骨质破坏为主,周围伴骨质硬化 B. 局部骨质疏松 C. 以骨质增生硬化为主 D. 以骨质破坏为主,一般没有明显骨质增生硬化 E. 早期即有骨质破坏出现 10. 乳腺钼靶摄影最佳时间:( ) A. 月经期 B. 月经中期 C. 与经期无关 D. 月经干净后一周内 E. 月经前期 11. 三岁小儿,钡灌肠发现直肠局限性狭窄,近端肠管明显扩张,诊断应考虑为:( ) A. 先天性巨结肠

编译原理习题集

第二章 2.构造产生下列语言的文法 (2){a n b m c p|n,m,p≥0} 解: G(S) :S→aS|X,X→bX|Y,Y→cY|ε (3){a n # b n|n≥0}∪{cn # dn|n≥0} 解: G(S):S→X,S→Y,X→aXb|#, Y→cYd|# } (5)任何不是以0 打头的所有奇整数所组成的集合 解:G(S):S→J|IBJ,B→0B|IB|ε,I→J|2|4|6|8, J→1|3|5|7|9} (6)(思考题)所有偶数个0 和偶数个1 所组成的符号串集合 解:对应文法为 S→0A|1B|ε,A→0S|1C B→0C|1S C→1A|0B 3.描述语言特点 (2)S→SS S→1A0 A→1A0 A→ε 解:L(G)={1n10n11n20n2… 1nm0nm |n1,n2,…,nm≥0;且n1,n2,…nm 不全 为零}该语言特点是:产生的句子中,0、1 个数相同,并且若干相接的1 后必然紧接数量相同连续的0。 (5)S→aSS S→a 解:L(G)={a(2n-1)|n≥1}可知:奇数个a 5. (1) 解:由于此文法包含以下规则:AA→ε,所以此文法是0 型文法。 7.解: (1)aacb 是文法G[S]中的句子,相应语法树是: 最右推导:S=>aAcB=>aAcb=>aacb 最左推导:S=>aAcB=>aacB=>aacb (3)aacbccb 不是文法G[S]中的句子

aacbccb 不能从S推导得到时,它仅是文法G[S]的一个句型的一部分,而不是一个句子。 11.解:最右推导: (1) S=>AB=>AaSb=>Aacb=>bAacb=>bbAacb=>bbaacb 上面推导中,下划线部分为当前句型的句柄。对应的语法树为: 第三章 3 假设M:人 W:载狐狸过河,G:载山羊过河,C:载白菜过河

计算机专升本考试模拟试题(含答案)(20210220065226)

专升本公共计算机基础模拟试题二及答案模拟试卷(二) 模拟试卷(二) 一、填空题(每空 1 分,共30分) 1.一个完整的计算机系统由_ 硬件系统_和_软件系统____ 两部分组成。 2.个人计算机的主要性能指标有字长、__________ 运算速度、 、 _______ 、外部设备和软件配置。 3.两位二进制可表示___两_ 种不同的状态。 4.无论是西文字符还是中文字符,在机内一律用二进制___编码 来表示。 5.系统软件包括操作系统、应用软件__ 、数据库管理系统、一 些实用程序。 6.-和-- 集成在一块芯片上,称为微处理器(CPU )。 7.启动Windows98 后,在桌面的空白区域单击鼠标右键,执行“属性” 命令后,将出现窗口。 8.Windows98系统提供了丰富的应用程序,这些程序按其功能放在相应的程序组中。要编辑一个图形文件需要用附件组中的程序。 9. 在Windows98 系统控制面板中,删除某一中文输入法后,该输入法从输入法属性的列表框中被删除,而并非从中删除了该输入 法。

10. 在Windows98 系统中,可以使用 ___ 对文件夹和文件进行管理。 11.利用剪贴板复制文本,首先要文本,然后单击 “ ______ ”按钮,再确定____ ,最后单击“ _____ ”按钮。 12.在Word 窗口的“窗口”菜单的下面有一些文件名,它们是 Word 文档名。 13.在Word 中,_____ 的作用是控制文档内容在页面中的位置。 14. Excel 是一个通用的___ 软件。 15. 向Excel 工作表中输入数据时,键入前导符表示要输入公 式。 16. 在PowerPoint 中,演示文稿的后缀名为 _ ,演示文稿模板的后缀名为_____ 。 17. 为了解决IP 地址难于记忆,Internet 又设计了。 18.计算机网络从逻辑功能上可以分为资源子网和__ 。 19.计算机网络是_____ 与________ 紧密结合的产物。 20.现在常用的浏览器有微软公司的和网景公司的 _______ 。 二、选择题(每空 1 分,共30 分) 1.所谓“裸机”是指【 d 】。

编译原理课后习题答案-清华大学-第二版

第1章引论 第1题 解释下列术语: (1)编译程序 (2)源程序 (3)目标程序 (4)编译程序的前端 (5)后端 (6)遍 答案: (1) 编译程序:如果源语言为高级语言,目标语言为某台计算机上的汇编语言或机器语言,则此翻译程序称为编译程序。 (2) 源程序:源语言编写的程序称为源程序。 (3) 目标程序:目标语言书写的程序称为目标程序。 (4) 编译程序的前端:它由这样一些阶段组成:这些阶段的工作主要依赖于源语言而与目标机无关。通常前端包括词法分析、语法分析、语义分析和中间代码生成这些阶 段,某些优化工作也可在前端做,也包括与前端每个阶段相关的出错处理工作和符 号表管理等工作。 (5) 后端:指那些依赖于目标机而一般不依赖源语言,只与中间代码有关的那些阶段,即目标代码生成,以及相关出错处理和符号表操作。 (6) 遍:是对源程序或其等价的中间语言程序从头到尾扫视并完成规定任务的过程。 第2题 一个典型的编译程序通常由哪些部分组成?各部分的主要功能是什么?并画出编译程序的总体结构图。 答案: 一个典型的编译程序通常包含8个组成部分,它们是词法分析程序、语法分析程序、语义分析程序、中间代码生成程序、中间代码优化程序、目标代码生成程序、表格管理程序和错误处理程序。其各部分的主要功能简述如下。 词法分析程序:输人源程序,拼单词、检查单词和分析单词,输出单词的机内表达形式。 语法分析程序:检查源程序中存在的形式语法错误,输出错误处理信息。 语义分析程序:进行语义检查和分析语义信息,并把分析的结果保存到各类语义信息表中。

目标代码生成程序:将优化后的中间代码程序转换成目标代码程序。 表格管理程序:负责建立、填写和查找等一系列表格工作。表格的作用是记录源程序的各类信息和编译各阶段的进展情况,编译的每个阶段所需信息多数都从表格中读取,产生的中间结果都记录在相应的表格中。可以说整个编译过程就是造表、查表的工作过程。需要指出的是,这里的“表格管理程序”并不意味着它就是一个独立的表格管理模块,而是指编译程序具有的表格管理功能。 错误处理程序:处理和校正源程序中存在的词法、语法和语义错误。当编译程序发现源程序中的错误时,错误处理程序负责报告出错的位置和错误性质等信息,同时对发现的错误进行适当的校正(修复),目的是使编译程序能够继续向下进行分析和处理。 注意:如果问编译程序有哪些主要构成成分,只要回答六部分就可以。如果搞不清楚,就回答八部分。 第3题 何谓翻译程序、编译程序和解释程序?它们三者之间有何种关系? 答案: 翻译程序是指将用某种语言编写的程序转换成另一种语言形式的程序的程序,如编译程序和汇编程序等。 编译程序是把用高级语言编写的源程序转换(加工)成与之等价的另一种用低级语言编写的目标程序的翻译程序。 解释程序是解释、执行高级语言源程序的程序。解释方式一般分为两种:一种方式是,源程序功能的实现完全由解释程序承担和完成,即每读出源程序的一条语句的第一个单词,则依据这个单词把控制转移到实现这条语句功能的程序部分,该部分负责完成这条语句的功

医学影像学试题附答案

医学影像学试卷 适用X围:__________ 出题教师:__________ 试卷满分100 分,考试时间60 分钟;书写要工整、清楚、标点符号使用正确。 一、填空题,根据题意,将正确答案补充完整(本大题满分10分,每小题2分) 1. 在CT纵隔窗图象上主肺动脉窗平面,显示的主要大血管有:(上腔静脉),(升主动脉),(降主动脉) 2. 骨膜增生又称骨膜反应,是因骨膜受到刺激,其内层的(成骨细胞)活动增加而产生的(骨膜新生骨)。X线上常表现为与骨皮质平行的线状、层状或(花边)状,已形成的骨膜新生骨可重新被破坏,破坏区两端残留骨膜反应呈三角形或袖口状,称为(骨膜三角或Codman三角)。 3. 输尿管结石的好发部位(肾盂输尿管移行部),(骨盆入口处)和(膀胱入口处)。 4. 胃溃疡之龛影在切线位X线片上的特征是(突出于轮廓线外),边缘光整,形状较规则,(多呈乳头状),可有(粘膜线)、狭颈征、项圈征出现。 5. MRI对(钙化),(细小骨化)的显示不如X线和CT。 二、单选题,以下各题有多个选项,其中只有一个选项是正确的,请选择正确答案(本大题满分30分,每小题1.5分) 1. 下列哪种方法为颅脑疾病诊断的基本方法:( ) A. 脑室造影 B. 计算机体层

C. 头颅平片 D. 磁共振成像 E. 脑血管造影 2. 形成正位肺门阴影最重要的的解剖结构是:( ) A. 淋巴组织 B. 支气管动脉 C. 支气管 D. 肺动脉 E. 肺静脉 3. 下列哪项不是逆行肾盂造影的优点:( ) A. 不通过血液循环,全身反应少 B. 禁忌症少 C. 造影剂量少,显影清楚 D. 能同时了解肾功能情况 E. 碘过敏者同样可以运用 4. 下列那项不是成骨肉瘤的X线表现:( ) A. 死骨形成 B. 骨膜反应 C. 软组织肿块 D. 溶骨性骨破坏 E. 瘤骨形成 5. 对冠心病室壁瘤诊断最可靠的方法是:( )

编译原理:学习指导与典型题解析

(1)——不是NFA的成分o A.有穷字母表B.初始状态集合 c.终止状态集合D.有限状态集合 (北京航天航空大学研究生入学考试试题 (2)——不是编译程序的组成部分0 A.词法分析程序B.代码生成程序 c.设备管理程序D.语法分析程序 (北京航天航空大学研究生入学考试试题 解答 (1)B,(2)C 例题2.2 给出下面描述的正规表达式 (1)以0l结尾的二进制数串; (2)能被5整除的十进制整数; (3)包含奇数个t或奇数个0的二进制数串 解题思路 (1)分析题意,要求的是二进制串,即由0和1构成的串,并且必须以ot结尾,所以 本题可以分两部分去完成,一部分实现由o和1构成的任意串,一部分即01,然后将它们连接到一起就可以了,所以本题的解答是:(1|0)*01 (2)分析题意,本题要求是十进制整数,也就是由o09这10个数字组成的字符串, 并且不能以o开头(整数“o”除外),要求能被5整除,则该串必须以0或者5结尾0根据我们的分析,可以把本题分成两种情况考虑:一种情况是该整数只有1位,则该整数有0 和5两种可能;另外一种情况是该整数有多位,则该整数可以分成3部分考虑,一是第l 位必须不为0,二是最后1位必须为0或5,三是中间部分可有可无,并且可以由0…9之间任意数字构或,所以本题的正规表达式为:(1|2|3|4|5|6|7|8|9) (0|1|2|3|4|5|6|7|8|9)*(0|5)| (0|5) (3)本题求二进制串,并且要求包含奇数个0或奇数个1,由于o和1都可以在二进制串 中任何地方出现,所以本题只需要考虑一种情况,另外一种情况也可以类似求得0考虑包含奇数个0的字符串:由于只关心0的个数的奇偶数,我们可以把二进制串分成多段来考虑,第1段为二进制串的开始到第1个0为止,这一段包含1个o,并且0的前面有0个或多个l,对于剩下的二进制串按照每段包含两个0的方式去划分,即以o开始,以0结尾,中间可以有0个或多个1,如果一个二进制串被这样划分完后,剩下的部分如果全部是全1串(这些全1串在前面划分的串之间或最后),则该二进制串就具有奇数个o,所以该二进制串可以这样描述:以第1段(1‘o)开始.后面由全1串(1‘)以及包含两个o的串(ol0o)组成,所以包含奇数个0的正规表达式为:100(1[ol’o]‘,本题的解答则是:1*0(1|01*0)*|0*1(0|10*1)*

相关文档
相关文档 最新文档