计算机编译原理试题讲解

计算机导论试题与答案

《计算机导论》试题和答案 一、填空题(每小题1分,共20分): 1. 计算机领域中采用_________、_________、或_________来表示数值。。 2. 冯·诺依曼型计算机的两大特征是“程序存储”和“______”。 3. 美国标准信息交换代码,简称ASCII码,它是____位二进制编码,因此,它可以表示 ____种字符。 4. 计算机中采用的基本逻辑电路主意有各种______及______。 5. 用_________语言编写的程序可由计算机直接执行。 6. 串口按信息传送格式可分为_________和_________。 7. 计算机的主存储器存储直接与__交换的信息,辅助存储器存放当前不立即使用的信息。 8. 堆栈是指用作数据暂存的一组寄存器或一片存储区,它的工作方式称为______。 9. 由寻址方式形成的操作数的真正存放地址,称为操作数的______。 10. 计算机网络按距离可分为______和______。 11. 设备管理中的设备是指计算机系统的_____、_____和_____。 12. 操作系统按功能特征可分为______、______和______。 13. 高级语言的基本元素可以分为____、______、______、______和______等五大类。 14. 从根算起,树可以分为多个层次,树的_____称为树的深度。 15. _____是数据组织形式,反映数据之间的关系,但不涉及数据的具体内容。 16. 线性表的链式存储结构中,每个元素需存储两部分信息:一部分是元素本身的信息,称之“_____”;另一部分则是该元素的直接后继元素的存储位置,称之“_____”。 17. 栈是限定在_____进行插入和删除运算的线性表,其表尾称为_____,表头称为_____。 18. 用编译方法在计算机上执行用高级语言编写的程序,可分为两个阶段: _____和_____。

编译原理期末考试习题及答案

一、填空题|(每题4分,共20分) 1. 乔母斯基定义的3型文法(线性文法)产生式形式 A→Ba|a,或A→aB|a,A,B∈Vn, a,b∈Vt 。 2.语法分析程序的输入是单词符号,其输出是语法单位。 3 型为 B → .aB 的LR(0)项目被称为移进项目,型为 B → a.B 的LR(0) 项目被称为待约项目, 4.在属性文法中文法符号的两种属性分别为继承属性和综合属性。 5、运行时存贮管理方案有静态存储分配、动态存储分配和堆式存储分配和方案。 二.已知文法 G(S) (1) E → T | E+T (2) T → F | F*F (3) F →(E)| i (1)写出句型(T*F+i)的最右推到并画出语法树。(4分) (2)写出上述句型的短语,直接短语和句柄。(4分) 答:(1)最右推到(2分) E ==> T ==> F ==> (E) ==> (E+T) ==> (E+F) ==> (E+i) ==> (T+i) ==> (T*F+i) (2) 语法树(2分) (3)(4分) 短语:(T*F+i),T*F+i ,T*F , i 直接短语:T*F , i 句柄:T*F 三. 证明文法G(S) :S → SaS |ε是二义的。(6分) 答:句子aaa对应的两颗语法树为:

因此,文法是二义文法 四.给定正规文法G(S): (1) S → Sa | Ab |b (2) A → Sa 请构造与之等价的DFA。(6分) 答:对应的NFA为:(6分) 状态转换表: a b {F} Φ{S} {S} {S,A} Φ {S,A} {S,A} {S} 五. 构造识别正规语言b*a(bb*a)*b* 最小的DFA(要求写出求解过程)。(15分)答:(1)对应的NFA(5分) a b {0} {1,3} {0} {1,3} Φ{2,3} {2,3} {1,3} {2,3} (5分) 六. 已知文法G(S) : (1) S → ^ | a | (T) (2) T → T,S | S 试:(1)消除文法的左递归;(4分) (2)构造相应的first 和 follow 集合。(6分) 答:(1)消除文法的左递归后文法 G’(S)为: (1) S → ^ | a | (T)

编译原理作业答案

《编译原理》第一次作业参考答案 一、下列正则表达式定义了什么语言(用尽可能简短的自然语言描述)? 1.b*(ab*ab*)* 所有含有偶数个a的由a和b组成的字符串. 2.c*a(a|c)*b(a|b|c)* | c*b(b|c)*a(a|b|c)* 答案一:所有至少含有1个a和1个b的由a,b和c组成的字符串. 答案二:所有含有子序列ab或子序列ba的由a,b和c组成的字符串. 说明:答案一要比答案二更好,因为用自然语言描述是为了便于和非专业的人员交流,而非专业人员很可能不知道什么是“子序列”,所以相比较而言,答案一要更“自然”. 二、设字母表∑={a,b},用正则表达式(只使用a,b, ,|,*,+,?)描述下列语言: 1.不包含子串ab的所有字符串. b*a* 2.不包含子串abb的所有字符串. b*(ab?)* 3.不包含子序列abb的所有字符串. b*a*b?a* 注意:关于子串(substring)和子序列(subsequence)的区别可以参考课本第119页方框中的内容. ~\(≧▽≦)/~ ~\(≧▽≦)/~ ~\(≧▽≦)/~ ~\(≧▽≦)/~ ~\(≧▽≦)/~ ~\(≧▽≦)/~ ~\(≧▽≦)/~ ~\(≧▽≦)/~ 《编译原理》第二次作业参考答案 一、考虑以下NFA: 1.这一NFA接受什么语言(用自然语言描述)? 所有只含有字母a和b,并且a出现偶数次或b出现偶数次的字符串. 2.构造接受同一语言的DFA. 答案一(直接构造通常得到这一答案):

答案二(由NFA构造DFA得到这一答案): 二、正则语言补运算 3.画出一个DFA,该DFA恰好识别所有不含011子串的所有二进制串. 1.画出一个DFA,该DFA恰好识别所有不含011子串的所有二进制串.

计算机导论试题与答案[技巧]

计算机导论试题与答案[技巧] 计算机导论试题与答案 《计算机导论》试题和答案 一、填空题(每小题1分,共20分): 1. 计算机领域中采用_________、_________、或_________来表示数值。。 2. 冯?诺依曼型计算机的两大特征是“程序存储”和“______”。 3. 美国标准信息交换代码,简称ASCII码,它是____位二进制编码,因此,它可以表示 ____种字符。 4. 计算机中采用的基本逻辑电路主意有各种______及______。 5. 用_________语言编写的程序可由计算机直接执行。 6. 串口按信息传送格式可分为_________和_________。 7. 计算机的主存储器存储直接与,,交换的信息,辅助存储器存放当前不立即使用的信息。 8. 堆栈是指用作数据暂存的一组寄存器或一片存储区,它的工作方式称为 ______。 9. 由寻址方式形成的操作数的真正存放地址,称为操作数的 ______。 10. 计算机网络按距离可分为______和______。 11. 设备管理中的设备是指计算机系统的_____、_____和_____。 12. 操作系统按功能特征可分为______、______和______。 13. 高级语言的基本元素可以分为____、______、______、______和______等五大类。 14. 从根算起,树可以分为多个层次,树的_____称为树的深度。

15. _____是数据组织形式,反映数据之间的关系,但不涉及数据的具体内容。 16. 线性表的链式存储结构中,每个元素需存储两部分信息:一部分是元素本身的信息,称之“_____”;另一部分则是该元素的直接后继元素的存储位置,称之“_____”。 17. 栈是限定在_____进行插入和删除运算的线性表,其表尾称为_____,表头称为_____。 18. 用编译方法在计算机上执行用高级语言编写的程序,可分为两个阶段: _____和_____。 19. 从资源管理的角度,操作系统要实现对计算机系统的四类资源管理,即 ______、______、______和______。 20. 处理机管理程序中,作业调度程序的管理对象是______,进程调度和交通控制程序管理的对象是______。 二、判断题(如果错误请说明理由,每题1.5分,共15分): 1( 全加器只能实现一位二进制数相加。( ) 2( 将十进制数转换成二进制数: ( ) 3( 将十进制数转换成二进制数的补码: ( ) 4( 兼容机和原装机的软件是不兼容的。( ) 5( 并行性是指在同一时刻或在同一时间间隔内完成两种或两种以上性质相同或不同的工作,只要在时间上互相重叠都存在并行性。( ) 6( 计算机的硬、软件之间有固定不变的分界面。( ) 7( 线性表的链式存储结构的链表中的最后一个结点的指针域置为“空”,则此链表称为空表。( ) 8( 对于程序中的错误,编译程序都能有效的进行诊断和处理。( )

编译原理试题(卷)汇总-编译原理期末试题(卷)(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.( ) 产生式 16.通常一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目标代码生成等五个部分,还应包括_C____。

王汝传编译原理习题答案

《编译原理》习题答案: 第一次: P14 2、何谓源程序、目标程序、翻译程序、汇编程序、编译程序和解释程序?它们之间可能有何种关系? 答:被翻译的程序称为源程序; 翻译出来的程序称为目标程序或目标代码; 将汇编语言和高级语言编写的程序翻译成等价的机器语言,实现此功能的程序称为翻译程序; 把汇编语言写的源程序翻译成机器语言的目标程序称为汇编程序; 解释程序不是直接将高级语言的源程序翻译成目标程序后再执行,而是一个个语句读入源程序,即边解释边执行; 编译程序是将高级语言写的源程序翻译成目标语言的程序。 关系:汇编程序、解释程序和编译程序都是翻译程序,具体见P4 图 1.3。 P14 3、编译程序是由哪些部分组成?试述各部分的功能? 答:编译程序主要由8个部分组成:(1)词法分析程序;(2)语法分析程序;(3)语义分析程序;(4)中间代码生成;(5)代码优化程序;(6)目标代码生成程序;(7)错误检查和处理程序;(8)信息表管理程序。具体功能见P7-9。 P14 4、语法分析和语义分析有什么不同?试举例说明。 答:语法分析是将单词流分析如何组成句子而句子又如何组成程序,看句子乃至程序是否符合语法规则,例如:对变量x:= y 符合语法规则就通过。语义分析是对语句意义进行检查,如赋值语句中x与y类型要一致,否则语法分析正确,语义分析则错误。 P15 5、编译程序分遍由哪些因素决定? 答:计算机存储容量大小;编译程序功能强弱;源语言繁简;目标程序优化程度;设计和实现编译程序时使用工具的先进程度以及参加人员多少和素质等等。 补充: 1、为什么要对单词进行内部编码?其原则是什么?对标识符是如何进行内部编码的? 答:内部编码从“源字符串”中识别单词并确定单词的类型和值;原则:长度统一,即刻画了单词本身,也刻画了它所具有的属性,以供其它部分分析使用。对于标识符编码,先判断出该单词是标识符,然后在类别编码中写入相关信息,以表示为标识符,再根据具体标识符的含义编码该单词的值。 补充: 2、赋值语句:A:= 5 * C的语法和语义指的是什么? 答:语法分析将检查该语句是否符合赋值语句规则,语义是指将 5 * C 的结果赋值为 A 。第二次作业: P38 1、设T1={11,010},T2={0,01,1001},计算:T2T1,T1*,T2+。 T2T1={011,0010,0111,01010,100111,1001010} T1*={ε,11,010,1111,11010,01011,010010……} T2+={0,01,1001,00,001,01001,010,0101……}

计算机导论期末考试试题及答案

计算机专业计算机导论期末试题 一、单选题(每小题1分,共80分) 1.客机、火车订票系统属于 C 。 A.科学计算方面的计算机应用 B.数据处理方面的计算机应用 C.过程控制方面的计算机应用 D.人工智能方面的计算机应用 2.按照计算机用途分类,可将计算机分为 D 。 A.通用计算机、个人计算机 B.数字计算机、模拟计算机 C.数字计算机、混合计算机 D.通用计算机、专用计算机 3.下列数中最大的数是。 A.(1000101)2 B.(107)8 C.(73)10 D.(4B)16 4.已知:3×4=10,则5×6= D 。 A.24 B.26 C.30 D.36 5.假设某计算机的字长为8位,则十进制数(+67)10的反码表示为。 A.01000011 B.00111100 C.00111101 D.10111100 6.假设某计算机的字长为8位,则十进制数(-75)10的补码表示为。 A.01001011 B.11001011 C.10110100 D.10110101 7.已知:“B”的ASCII码值是66,则码值为1000100的字符为。 A.“C” B.“D” C.“E” D.“F” 8.在计算机系统内部,汉字的表示方法是采用。 A.ASCII码 B.机内码 C.国标码 D.区位码 9.汉字“办”的区位码是1676,其国标码是。 A.1676H B.4908H C.306CH D.3108H 10.一个汉字字形采用点阵时,其字形码要占72B。 A.16×16 B.24×24 C.32×32 D.48×48 11.在逻辑运算中有Y=A+B,则表示逻辑变量A和B进行 B 。 A.与运算 B.或运算 C.非运算 D.与非运算 12.通常所说的CPU包括 C 。 A.运算器 B.控制器 C.运算器和控制器 D.运算器、控制器和内存 13.计算机的内存储器比外存储器 B 。 A.更便宜 B.存储速度快 C.存储容量大 D.虽贵但能存储更多信息 14.外部设备是指。 A.输入设备和输出设备 B.输入设备、输出设备、主存储器

(精选)编译原理期末考试题目及答案

一、填空题(每空2分,共20分) 1.编译程序首先要识别出源程序中每个单词,然后再分析每个句子并翻译其意义。 2.编译器常用的语法分析方法有自底向上和自顶向下两种。 3.通常把编译过程分为分析前端与综合后端两大阶段。词法、语法和语义分析是对源程序的分析,中间代码生成、代码优化与目标代码的生成则是对源程序的综合。 4.程序设计语言的发展带来了日渐多变的运行时存储管理方案,主要分为两大类,即静态存储分配方案和动态存储分配方案。 5.对编译程序而言,输入数据是源程序,输出结果是目标程序。 1.计算机执行用高级语言编写的程序主要有两种途径:解释和编译。 2.扫描器是词法分析器,它接受输入的源程序,对源程序进行词法分析并识别出一个个单词符号,其输出结果是单词符号,供语法分析器使用。 3.自下而上分析法采用移进、归约、错误处理、接受等四种操作。 4.一个LL(1)分析程序需要用到一张分析表和符号栈。 5.后缀式abc-/所代表的表达式是a/(b-c)。 二、单项选择题(每小题2分,共20分) 1.词法分析器的输出结果是__C。 A.单词的种别编码B.单词在符号表中的位置 C.单词的种别编码和自身值D.单词自身值 2.正规式 M 1 和 M 2 等价是指__C_。 A. M1和M2的状态数相等B. M1和M2的有向边条数相等 C. M1和M2所识别的语言集相等 D. M1和M2状态数和有向边条数相等 3.文法G:S→xSx|y所识别的语言是_C____。 A. xyx B. (xyx)* C.xnyxn(n≥0) D. x*yx* 4.如果文法G是无二义的,则它的任何句子α_A____。 A.最左推导和最右推导对应的语法树必定相同B.最左推导和最右推导对应的语法树可能不同 C.最左推导和最右推导必定相同D.可能存在两个不同的最左推导,但它们对应的语法树相同5.构造编译程序应掌握____D__。 A.源程序B.目标语言 C.编译方法 D.以上三项都是 6.四元式之间的联系是通过__B___实现的。 A.指示器B.临时变量C.符号表 D.程序变量 7.表达式(┐A∨B)∧(C∨D)的逆波兰表示为__B___。 A.┐AB∨∧CD∨B.A┐B∨CD∨∧C. AB∨┐CD∨∧ D.A┐B∨∧CD∨8. 优化可生成__D___的目标代码。 A.运行时间较短B.占用存储空间较小 C.运行时间短但占用内存空间大 D.运行时间短且占用存储空间小 9.下列___C___优化方法不是针对循环优化进行的。 A. 强度削弱 B.删除归纳变量C.删除多余运算 D.代码外提 10.编译程序使用_B_区别标识符的作用域。 A. 说明标识符的过程或函数名B.说明标识符的过程或函数的静态层次 C.说明标识符的过程或函数的动态层次 D. 标识符的行号 三、判断题(对的打√,错的打×,每小题1分,共10分) 2.一个有限状态自动机中,有且仅有一个唯一的终态。x

编译原理

一、选择 1.将编译程序分成若干个“遍”是为了_使程序的结构更加清晰__。 2.正规式 MI 和 M2 等价是指__.M1 和 M2 所识别的语言集相等_。 3.中间代码生成时所依据的是 _语义规则_。 4.后缀式 ab+cd+/可用表达式__(a+b)/(c+d)_来表示。 6.一个编译程序中,不仅包含词法分析,_语法分析 ____,中间代码生成,代码优化,目标代码生成等五个部分。 7.词法分析器用于识别__单词___。 8.语法分析器则可以发现源程序中的___语法错误__。 9.下面关于解释程序的描述正确的是__解释程序的特点是处理程序时不产生目标代码 ___。 10.解释程序处理语言时 , 大多数采用的是__先将源程序转化为中间代码 , 再解释执行___方法。 11.编译过程中 , 语法分析器的任务就是__(2)(3)(4)___。 (1) 分析单词是怎样构成的 (2) 分析单词串是如何构成语句和说明的 (3) 分析语句和说明是如何构成程序的 (4) 分析程序的结构 12.编译程序是一种__解释程序__。 13.文法 G 所描述的语言是_由文法的开始符号推出的所有终极符串___的集合。 14.文法分为四种类型,即 0 型、1 型、2 型、3 型。其中 3 型文法是___正则文法__。 15.一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组 _产生式__。 16.通常一个编译程序中,不仅包含词法分析,语法分析,中间代码生成,代码优化,目标代码生成等五个部分,还应包括_表格处理和出错处理__。 17.文法 G[N]= ( {b} , {N , B} , N , {N→b│ bB , B→bN} ),该文法所描述的语言是L(G[N])={b2i+1│ i ≥0} 18.一个句型中的最左_简单短语___称为该句型的句柄。 19.设 G 是一个给定的文法,S 是文法的开始符号,如果 S->x( 其中 x∈V*), 则称 x 是 文法 G 的一个__句型__。 21.若一个文法是递归的,则它所产生的语言的句子_是无穷多个___。 22.词法分析器用于识别_单词_。 23.在语法分析处理中, FIRST 集合、 FOLLOW 集合、 SELECT 集合均是_终极符集 ___。 24.在自底向上的语法分析方法中,分析的关键是_寻找句柄 ___。 25.在 LR 分析法中,分析栈中存放的状态是识别规范句型__活前缀__的 DFA 状态。 26.文法 G 产生的__句子___的全体是该文法描述的语言。 27.若文法 G 定义的语言是无限集,则文法必然是 __递归的_ 28.四种形式语言文法中,1 型文法又称为 _短语结构文法__文法。 29.一个文法所描述的语言是_唯一的__。 30. _中间代码生成___和代码优化部分不是每个编译程序都必需的。 31._解释程序和编译程序___是两类程序语言处理程序。 32.数组的内情向量中肯定不含有数组的_维数___的信息。 33. 一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组__D___。 34.文法分为四种类型,即 0 型、1 型、2 型、3 型。其中 2 型文法是__上下文无关文法__。 35.一个上下文无关文法 G 包括四个组成部分,它们是:一组非终结符号,一组终结符号,一个开始符号,以及一组 __产生式___。 36.__ BASIC ___是一种典型的解释型语言。 37.与编译系统相比,解释系统___比较简单 , 可移植性好 , 执行速度慢__。 38.用高级语言编写的程序经编译后产生的程序叫__目标程序___。 39.编写一个计算机高级语言的源程序后 , 到正式上机运行之前,一般要经过__(1)(2)(3)__这几步: (1) 编辑 (2) 编译 (3) 连接 (4) 运行 40.把汇编语言程序翻译成机器可执行的目标程序的工作是由__编译器__完成的。 41.词法分析器的输出结果是__单词的种别编码和自身值__。 42.文法 G :S→xSx|y 所识别的语言是_ xnyxn(n≥0)___。 43.如果文法 G 是无二义的,则它的任何句子α__最左推导和最右推导对应的语法树必定相同_。 44.构造编译程序应掌握___源程序目标语言编译方法___。 45.四元式之间的联系是通过__临时变量___实现的。 46.表达式( ┐ A ∨B)∧(C∨D)的逆波兰表示为___ A ┐ B∨CD∨∧__。 47. 优化可生成__运行时间短且占用存储空间小___的目标代码。 48.下列__删除多余运算 ____优化方法不是针对循环优化进行的。 49.编译程序使用__说明标识符的过程或函数的静态层次___区别标识符的作用域。 50.编译程序绝大多数时间花在___表格管理__ 上。 51.编译程序是对__高级语言的翻译___。

编译原理_第三版_课后答案.docx

编译 原理 课后题答案 第二章 P36-6 (1) L ( G 1 ) 是 0~9 组成的数字串 (2) 最左推导 : N ND NDD NDDD DDDD 0DDD 01DD 012D 0127 N ND DD 3D 34 N ND NDD DDD 5DD 56D 568 最右推导 : N ND N 7 ND 7 N 27 ND 27 N 127 D127 0127 N ND N 4 D 4 34 N ND N 8 ND 8 N 68 D68 568 P36-7 G(S) O 1|3|5|7|9 N 2|4|6|8|O D 0|N S O| AO A AD | N P36-8 文法: E T| E T|E T T F |T * F |T / F F ( E)|i 最左推导 : E E T T T F T i T i T * F i F * F i i * F i i * i E T T * F F * F i * F i *( E ) i *( E T) i *( T T ) i *( F T ) i *( i T ) i *( i F ) i *( i i ) 最右推导 :

E E T E T * F E T * i E F * i E i * i T i * i F i * i i i * i E T F * T F * F F *( E) F *( E T) F *( E F ) F *( E i ) F *( T i ) F *( F i ) F *( i i ) i *( i i ) 语法树: /******************************** E E+T E+T F T F i F i i i+i+i *****************/ P36-9 句子 iiiei有两个语法树: S iSeS iSei iiSei iiiei S iS iiSeS iiSei iiiei E E E+T E-T T T*F E-T F F F i T F i i i F i i i-i-i i+i*i P36-10 /************** S TS | T T( S) | ( ) ***************/ P36-11 /*************** L1: S AC A aAb | ab C cC | L2:

(精选)《计算机导论》期末考试试题_模拟试题及答案

《计算机导论》期末考试试题模拟试题及 答案 一、填空题(每小题1分,共20分): 1. 计算机领域中采用_____二进制____、___8______、或____16_____来表示数值。。 2. 冯·诺依曼型计算机的两大特征是“程序存储”和“_采用二进制_____”。 3. 美国标准信息交换代码,简称ASCII码,它是__7__位二进制编码,因此,它可以表示_128___种字符。 4. 计算机中采用的基本逻辑电路主意有各种______门电路及触发器______。 5. 用___机器______语言编写的程序可由计算机直接执行。 6. 串口按信息传送格式可分为___串行接口并行接口_____。 7. 计算机的主存储器存储直接与_CPU_交换的信息,辅助存储器存放当前不立即使用的信息。 8. 堆栈是指用作数据暂存的一组寄存器或一片存储区,它的工作方式称为______。 9. 由寻址方式形成的操作数的真正存放地址,称为操作数的__有效地址____。 10. 计算机网络按距离可分为_局域网广域网____。 11. 设备管理中的设备是指计算机系统的___输入设备输出设备外存储器__。 12. 操作系统按功能特征可分为__批处理系统分时系统实时系统 _。 13. 高级语言的基本元素可以分为__数逻辑值名字标号字符串____等五大类。 14. 从根算起,树可以分为多个层次,树的__最大层次___称为树的深度。 15. ___数据结构__是数据组织形式,反映数据之间的关系,但不涉及数据的具体内容。

16. 线性表的链式存储结构中,每个元素需存储两部分信息:一部分是元素本身的信息,称之“_____”;另一部分则是该元素的直接后继元素的存储位置,称之“_____”。

期末考试编译原理试卷及答案

一. 填空题(每空2分,共20分) 1. 不同的编译程序关于数据空间的存储分配策略可能不同,但大部分编译中采用的方案有两种:静 态存储分配方案和动态存储分配方案,而后者又分为(1) 和 (2) 。 2. 规范规约是最(3)规约。 3. 编译程序的工作过程一般划分为5个阶段:词法分析、(4) 、语义分析与中间代码生成,代码优化及(5) 。另外还有(6)和出错处理。 4.表达式x+y*z/(a+b)的后缀式为 (7) 。 5.文法符号的属性有综合属性和 (8)。 6.假设二位数组按行存放,而且每个元素占用一个存储单元,则数组a[1..15,1..20]某个元素a[i ,j]的地址 计算公式为(9)。 7.局部优化是局限于一个(10)范围内的一种优化。 二. 选择题(1-6为单选题,7-8为多选题,每问2分,共20分) 1. 一个上下文无关文法G 包括四个组成部分:一组终结符,一组非终结符,一个( ),以及一组 ( )。 A . 字符串 B . 产生式 C . 开始符号 D . 文法 2.程序的基本块是指( )。 A . 一个子程序 B . 一个仅有一个入口和一个出口的语句 C . 一个没有嵌套的程序段 D . 一组顺序执行的程序段,仅有一个入口和一个出口 3. 高级语言编译程序常用的语法分析方法中,递归下降分析法属于( )分析方法。 A . 自左向右 B . 自顶向下 C . 自底向上 D . 自右向左 4.在通常的语法分析方法中,( )特别适用于表达式的分析。 A . 算符优先分析法 B . LR 分析法 C . 递归下降分析法 D . LL (1)分析法 5.经过编译所得到的目标程序是( )。 A . 四元式序列 B . 间接三元式序列 C . 二元式序列 D . 机器语言程序或汇编语言程序 6. 一个文法所描述的语言是( );描述一个语言的文法是( )。 A . 唯一的 B . 不唯一的 C . 可能唯一,也可能不唯一 7. 如果在文法G 中存在一个句子,当其满足下列条件( )之一时,则称该文法是二义文法。 A . 其最左推导和最右推导相同 B . 该句子有两个不同的最左推导 C . 该句子有两个不同的最右推导 D . 该句子有两棵不同的语法树

8619计算机导论试题 答案

试卷代号:8619 安徽广播电视大学开放教育试点本科补修课程考试计算机科学与技术专业《计算机导论》答案及评分标准 (供参考) 一、填空题(每空1分,共20分) 1、1280×1024 2、后进先出 3、处理机管理存储器管理输入输出设备管理文件管理 4、条件格式 5、文件系统数据库系统 6、冗余压缩法(或无损压缩法/熵编码)熵压缩法(或有损压缩法) 7、实体安全网络安全应用安全管理安全 8、有线信道无线信道 9、及格 10、最低的耦合度,即不同的模块之间的关系尽可能弱模块的层次不能过深,一般应尽量控制在7层以内 二、单选题(每题2分,共20分) 1、C 2、 A 3、A 4、C 5、D 6、D 7、 D 8、A 9、C 10、 D 三、名词解释(每题5分,共20分) 1、RISC、CISC 答:精简指令集计算机(reduced instruction set computer) 复杂指令集计算机(complex instruction set computer) 2、分时操作系统:所谓分时是指多个用户终端共享使用一台计算机,即把计算机系统的CPU时间分割成一个个小的时间段(称其为一个时间片),从而将CPU的工作时间分别提供给各个用户终端。分时操作系统设计的主要目标是提高对用户响应的及时性。它

一般适用于带有多个终端的小型机。 3、SQL:SQL是Structured Query Language词组的缩写,含义为“结构化查询语言”,它包括数据的定义、操纵、查询和控制四个方面的功能,是一种功能齐全的数据库语言。 4、结构化方法:就是强调结构的合理性以及所开发的软件的结构的合理性。由此提出了一组提高软件结构合理性的准则。 四、问答题(每题10分,共40分) 1、答:1、数据传送类指令2、数据处理类指令3、程序控制类指令4、输入输出类指令5、硬件控制类指令 2、答案略。 3、答:图形一般指用计算机绘制的画面,如直线、圆、圆弧、任意曲线和图表等;图像则是指由输入设备捕捉的实际场景画面或以数字化形式存储的任意画面。 图像都是由一些排成行列的像素组成的,一般数据量都较大。而图形文件中只记录生成图的算法和图上的某些特征点,也称矢量图。相对于位图的大数据量来说,它占用的存储空间较小。 4、答:电子商务的系统框架构成:Internet:将计算机联网;域名服务器:用来进行域名地址和IP地址之间的转换;电子商务服务器:提供网上产品目录管理、网上电子交易安全监控、网上订货、电子收款机、银行支付网关等功能;电子商务应用服务器:提供供货链管理、网上市场、网上广告、网上零售、有偿服务、网上银行等功能;数据库服务器:提供对大量数据进行有效的存储、组织、管理、查询、检索等功能;支付网关:银行和金融系统和Internet的接口;认证机构:负责确认进行电子商务交易双方的身份、信誉度的权威性机构;电子商务客户机:顾客使用的终端机。

编译原理考试试题

一、回答下列问题:(30分) 1.什么是S-属性文法?什么是L-属性文法?它们之间有什么关系? 解答: S-属性文法是只含有综合属性的属性文法。(2分) L-属性文法要求对于每个产生式A X1X2…Xn,其每个语义规则中的每个属性或者是综合属性,或者是Xj的一个继承属性,且该属性仅依赖于: (1)产生式Xj的左边符号X1,X2…Xj-1的属性; (2)A的继承属性。(2分) S-属性文法是L-属性文法的特例。(2分) 2.什么是句柄?什么是素短语? 一个句型的最左直接短语称为该句型的句柄。(3分)素短语是这样的一个短语,它至少包含一个终结符并且不包含更小的素短语。(3分) 3.划分程序的基本块时,确定基本块的入口语句的条件是什么? 解答: (1)程序第一个语句,或 (2)能由条件转移语句或无条件转移语句转移到的语句,或 (3)紧跟在条件转移语句后面的语句。 4.(6分)运行时的DISPLAY表的内容是什么?它的作用是什么? 答:DISPLAY表是嵌套层次显示表。每当进入一个过程后,在建立它的活动记录区的同时建立一张嵌套层次显示表diaplay.假定现在进入的过程层次为i,则它的diaplay表含有i+1个单元,自顶向下每个单元依次存放着现行层、直接外层、…、直至最外层(主程序,0层)等每层过程的最新活动记录的起始地址。通过DISPLAY 表可以访问其外层过程的变量。 5.(6分)对下列四元式序列生成目标代码: A:=B*C D:=E+F G:=A+D H:=G*2 其中,H是基本块出口的活跃变量,R0和R1是可用寄存器 答: LD R0,B MUL R0,C LD R1,E ADD R1,F ADD R0,R1 MUL R0,2 ST R0,H

基于编译原理的计算器设计与实现

基于编译原理的计算器设计与实现 首先看一下这个计算器的功能: CALC> set a = 1; b = 2 CALC> set c = 3 CALC> calc (10 + pow(b, c)) * sqrt(4) - 1 35.0 CALC> exit 如上所示,这个计算器的功能非常简单: 1.用set命令设置上下文中的变量。 2.用calc命令计算一个表达式的值。 3.用exit命令退出计算器。 我们把编译的重点放在calc命令后面的计算表达式的解析,其它的部分我们可以简单处理(如set命令可以这样简单处理:先按分号分隔得到多个赋值处理,再按等号分隔就可以在上下文中设置变量了,并不需要复杂的编译过程)。 如上的演示例子中,我们使用编译技术处理的部分是(10 + pow(b, c)) * sqrt(4) - 1,其它部分我们只使用简单的文本处理。 麻雀虽小,但五脏俱全,这个计算器包含编译技术中最必要的部分。虽然这次我们只是实现了一个计算器,但所使用的技术足以实现一个简单的脚本语言的解释器了。 这个计算器分为如下几个部分: 词法分析:把表达式的文本,解析成词法元素列表(tokenList)。 语法分析:把tokenList解析成语法树(syntaxTree)。 语义分析:把语法树转成汇编语言的代码(asm) 汇编器:把汇编代码翻译为机器码(字节码)。 虚拟机:执行字节码。 一般的编译步聚中不包含“汇编器”和“虚拟机”,而这里之所以包含这两个部分是因为:通常编译器会直接由中间代码生成机器码,而不是生成汇编代码,而这里我之所以要生成汇编代码的原因是“调试的时候汇编的可读性很好”,如果直接生成目标代码,则会非常难用肉眼来阅读。 自己实现虚拟机的原因是:现有的机器(包括物理机和虚拟机以及模拟器)的指令虽然也很丰富,但似乎都没有直接计算“乘方”或“开方”的指令,自已实现虚拟机可以任意设计计算指令,这样可以降低整个程序的复杂度。 因汇编器与虚拟机并不是编译原理的部分,所以下文中并不会描述其实现细节,但因为计算器代码编译后的目标代码就是汇编代码,所以需要把汇编指令做一下说明(以下把这个汇编语言简称为ASM)。

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

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

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

《计算机导论》模拟试题及参考答案1

计算机导论模拟试题 一、单项选择题(每题2分,共30分) 1.采用晶体管作为电子元器件的计算机属于()。 A. 第一代计算机 B. 第二代计算机 C. 第三代计算机 D. 第四代计算机 2.冯诺伊曼的主要贡献是( )。 A. 发明了微型计算机 B. 提出了存储程序概念 C. 设计了第一台计算机 D. 设计了高级程序设计语言 3.计算机中,运算器的主要功能是进行()。 A.逻辑运算 B.算术运算 C.算术运算和逻辑运算 D.复杂方程的求解 4.计算机病毒是一种()。 A.特殊的计算机部件 B.特殊的生物病毒 C.游戏软件 D.人为编制的特殊的计算机程序 5.随机存储器简称为( )。 A.CMOS B. RAM C. XMS D. ROM 6.计算机一旦断电后( )中的信息会丢失。 A. 硬盘 B. 软盘 C. RAM D. ROM 7.CPU指的是计算机的( )部分。 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.Windows2000是一个()操作系统。 A.单用户单任务 B.单用户多任务 C.多用户多任务 D.多用户单任务 13.WINDOWS 2000的“回收站”是( ) A.内存中的一块区域 B.硬盘上的一块区域 C.软盘上的一块区域 D.高速缓存上的一块区域 14.计算机网络的特点是( )。 A.运算速度快 B.精度高 C.资源共享 D.内存容量大 15.下列选项中( )是调制解调器的作用 A.将计算机信号转变为音频信号 B.将音频信号转变为计算机信号 C.预防病毒进入系统 D.计算机信号与音频信号相互转换 二、简答题(每小题5分,共15分) 1.从计算机的发展过程来看,大致可分为那几个阶段,各阶段的主要特征是什么? 2. 显示器的分辨率与视频卡的关系是什么? 3.简述OSI模型中网络层、数据链路层、物理层各起什么作用。 精品文档,欢迎下载

相关文档
最新文档