欢迎来到天天文库
浏览记录
ID:6305561
大小:91.00 KB
页数:5页
时间:2018-01-09
《编译原理参考习题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、习题一1.一般程序设计语言的定义都涉及( )三个方面。①语法 ②语义 ③语用 ④程序基本符号的确定A.①②③B.①②④C.①③④D.②③④2.程序语言一般分为( )和( )两大类,其中( )通常又称为面向机器的语言。A.高级语言B.专用程序语言C.低级语言D.通用程序语言3.面向机器语言指的是( )A.用于解决机器硬件设计问题的语言B.特定计算机系统所固有的语言C.各种计算机系统都通用的语言D.只能在一台计算机上使用的语言4.在使用高级语言编程时,首先可通过编译程序发现源程序的全部( )错误和部分( )错误。A.语法B.语义C.语用D.运行5.编译程序与具
2、体的机器( ),与具体的语言( )。A.有关B.无关6.使用解释程序时,在程序未执行完的情况下,( )重新执行已执行的部分。A.也能B.不能7.编译程序是一种常用的( )软件。A.应用B.系统8.编写一个计算机高级语言的源程序后,到正式上机运行之前,一般要经过( )这几步。①编辑②编译③连接④运行A.①②③④B.①②③C.①③D.①④9.“用高级语言书写的源程序都必须通过编译,产生目标代码后才能投入运行。”这种说法( )。A.不正确B.正确10.编译程序生成的目标程序( )是机器语言的程序。A.一定B.不一定11.编译程序的工作过程一般可以划分为 等几个基本阶段,同时还会伴有
3、 和 。12.源程序是用高级语言编写的,目标程序是 ,则其翻译程序称为编译程序。13.编译方式与解释方式的根本区别在于 。14.编译程序是这样一种程序,它能够将 转换成与其等价的 。15.编译程序而言,输入数据是 ,输出结果是 。16.如果编译程序生成的目标程序是机器代码程序,则源程序的执行分为两大阶段: 和 。如果编译程序生成的目标程序是汇编语言程序,则源程序的执行方式分成三个阶段: 、 和 。17.解释下列名词:翻译程序、解释程序、编译程序、遍。18.常用的编辑器构造工具有哪些?参考答案1.A2.C,A,C3
4、.B4.A,B5.A,A6.A7.B8.B9.A10.B11.词法分析、语法分析、语义分析、中间代码生成、代码优化 表格处理 出错处理12.机器语言程序或汇编程序13.是否生成目标代码14.用甲语言书写的程序 用乙语言书写的程序15.源程序 目标程序16.编译阶段 运行阶段 编译阶段 汇编阶段 运行阶段17.翻译程序:把某一种语言程序转换成另一种语言程序的程序。解释程序:它以该语言写的源程序作为输入,但不产生目标程序,而是边解释边执行源程序本身。编译程序:将高级语言转换为诸如汇编语言或机器语言之类的“低级语言”的翻译程序。遍:对源程序或源程序的中间表示形式的文件从头到尾扫描一遍,并做有
5、关的加工处理,生成新的源程序中间形式或目标程序文件。习题二1.设有文法G[A]:A→a
6、b
7、e
8、Aa
9、Ae
10、A0
11、A10}0}0}(1)试问VT和VN是由哪些符号组成?(2)下列符号串a,ab0,a0e01,0a,11,eee是否为该文法的句子?2.设有文法G[N]:N→D
12、NDD→0
13、1
14、2
15、3
16、4
17、5
18、6
19、7
20、8
21、9G[N]定义的语言是什么?3.给出下面语言相应的文法。L1={ambn
22、m,n≥1}L2={anbnci
23、n≥1,i≥0}L3={anbncmdm
24、n≥1,m≥1}L4={0n
25、n≥0}L5={a2n+1
26、n≥0}L6={1n0m1m0n
27、n,m≥0}4.写一个文法,使
28、其语言的集合是奇数的集合,且每个奇数不以0开头。5.证明下面的文法是二义性的。S→iSeS
29、iS
30、i6.设有文法G[E]E→E+T
31、E-T
32、TT→T*F
33、T/F
34、FF→(E)
35、i试证明E+T*F是它的一个句型,指出这个句型的所有短语、直接短语和句柄。7.下面的文法生成的语言是什么?G1:S→ABG2:S→aA
36、aA→aA
37、εA→aSB→bc
38、bBc8.试证明文法G[<表达式>]是二义性文法。<表达式>→i
39、<表达式><运算符><表达式><运算符>→+
40、-
41、*
42、/9.设有文法T→T*F
43、FF→F↑P
44、PP→(T)
45、i试给出句型T*P↑(T*F)的语法树,并指出这个句型的所有短语、直接短语
46、和句柄。10.文法G[A]=({A},{a,b},{A→bA
47、a},A)所生成的语言是什么?11.已知文法G[S]:S→(AS)
48、(b)A→(SaA)
49、(a)试找出符号串(a)和(A((SaA)(b)))的短语、直接短语和句柄。参考答案1.(1)VN={A}VT={a,b,e,0,1}(2)a,a0e01,eee是该文法句子。2.L(G[N])={(0
50、1
51、2
52、…
53、9∣)+
54、或L(G[N])={a∣a为可带前导0的正整数}。3.G1:S→AB
此文档下载收益归作者所有