




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、二填空题1 .不同的编译程序关于数据空间的存储分配策略可能不同,但大部分编译中采用的方案有两种:静态存储分配方案和动态存储分配方案,而后者又分为(栈式动态存储分配)和(堆式动态存储分配)。2 .规范规约是最(左)规约。3 .编译程序的工作过程一般划分为5个阶段:词法分析、(语法分析)、语义分析与中间代码生成,代码优化及(目标代码生成)。另外还有(表格管理)和出错处理。4 .表达式x+y*z/(a+b)的后缀式为(xyz*ab+/+)。5 .文法符号的属性有综合属性和(继承属性)。6 .假设二位数组按行存放,而且每个元素占用一个存储单元,则数组a1.15,1.2塞个元素ai,j的地址计算公式为(
2、a+(i-1)*20+j-1)。7 .局部优化是局限于一个(基本块)范围内的一种优化。8词法规则通常可以用正规式,正规文法、自动机描述;语法规则通常用2型文法来描述;语义规则通常用属性文法来描述。9编译原理的工作过程一般划分为:词法分析、语法分析、语义分析、优化和目标代码生成五个阶段。1.(最右推导)称为规范推导。2编译过程可分为(词法分析),(语法分析),(中间代码生成),(代码优化)和(目标代码生成)五个阶段。3 .如果一个文法存在某个句子对应两棵不同的语法树,则称这个文法是(二义性的)。4 .从功能上说,程序语言的语句大体可分为(执行性)语句和(说明性)语句两大类。5 .语法分析器的输入
3、是(单词符号),其输出是(语法单位)。6 .扫描器的任务是从(源程序)中识别出一个个(单词符号)。7 .符号表中的信息栏中登记了每个名字的有关的性质,如(类型、种属、所占单元大小、地址)等等。8 .一个过程相应的DISPLAY表的内容为(现行活动记录地址和所有外层最新活动记录的地址)。9 .一个句型的最左直接短语称为句型的(句柄)。10 .常用的两种动态存贮分配办法是(栈式)动态分配和(堆式)动态分配。11 .一个名字的属性包括(类型)和(作用域)。12 .常用的参数传递方式有(传地址),(传值)和(传名)。13 .根据优化所涉及的程序范围,可将优化分成为(局部优化),(循环优化)和(全局优化
4、)三个级别。14 .语法分析的方法大致可分为两类,一类是(自上而下)分析法,另一类是(自下而上)分析法。15 .预测分析程序是使用一张(分析表)和一个(符号栈)进行联合控制的。16 .常用的参数传递方式有(传地址),(传值)和(传名)。17 .一张转换图只包含有限个状态,其中有一个被认为是(初)态;而且实际上至少要有一个(终)态。18 .根据优化所涉及的程序范围,可将优化分成为(局部优化),(循环优化)和(全局优化)三个级别。19 .语法分析是依据语言的(语法)规则进行。中间代码产生是依据语言的(语义)规则进行的。20 .一个句型的最左直接短语称为句型的(句柄)。21 .一个文法G,若它的预测
5、分析表M不含多重定义,则该文法是LL(1)文法)文法。22 .对于数据空间的存贮分配,FORTRAN采用(静态)策略,PASCAL采用(动态)策略。23 .如果一个文法存在某个句子对应两棵不同的语法树,则称这个文法是(二义性文法)。24 .最右推导亦称为(规范推导),由此得到的句型称为(规范)句型。25 .语法分析的方法大致可分为两类,一类是(自上而下)分析法,另一类是(自下而上)分析法。26 .对于文法G,仅含终结符号的句型称为(句子)。27 .所谓自上而下分析法是指(从开始符号出发,向下推导,推出句子)28 .语法分析器的输入是(单词符号),其输出是(语法单位)。29 .局限于基本块范围的
6、优化称(局部优化)。30 .预测分析程序是使用一张(分析表)和一个(符号栈)进行联合控制的。31.2型文法又称为(上下文无关文法)文法;3型文法又称为(正规)文法。32每条指令的执行代价定义为(指令访问主存次数加1)。33.算符优先分析法每次都是对(最左素短语)进行归约。三.解答题1.已知文法GE:EETE|(E)|iT7*|+(1)将文法G改造成LL(1)文法;(1)文法存在左递归,消除左递归后的文法为:Ef(E)E'|iE'E'TEE'|&T*|+(2)构造文法G中每个非终结符的FIRST集合及FOLLOW集合;FIRST(E尸(,iFIRST(E&
7、#39;)=*,+,&FIRST(T尸*,+FOLLOW(E)=),*,+,#FOWLLOW(E)=),*,+,#FOLLOW(T)=(,i(3)构造LL(1)分析表()i*+#EE-(E)E'E-iE'E,E'一£E'fTEEE'一eE,一TEEE'一eE'一eTT-*T一+2.(共12分)给定文法GS:S-S(S)|£(1)给出句子()()()(羽规范推导过程;(4分)S=邈=S()=遮()=S(_;)()=跑()()=S幽)()()=S(S)()()=S幽()()()二S(SQ)()()()=SQ)(&q
8、uot;)()()()()(2)指出每步推导所得句型的句柄;(1)中加下划线的部分是句柄,标识如(1)画出该句子的语法推导树。/I IS ( S )£ S ( S )S ( S )1 .写一个文法G,使其语言为不以0开头的偶数集。所求文法是GS:5 AB|BA0AAD|CB-2|4|6|8C-1|3|5|7|9|BD-0|C2 .已知文法G(S)及相应翻译方案5 aAbprint"1”Saprint"2”AASprint"3”A-cprint"4”输入acab输出是什么?输出是42313 .已知文法G(S)5 bAaA(B|aBAa)写出句子b
9、(aa)b的规范归约过程。4 .考虑下面的程序:procedurep(x,y,z;)beginy:=x+y;z:=z*z;endbeginA:=2;B:=A*2;P(A,A,B);PrintA,Bend.试问,若参数传递的方式分别采用传地址和传值时,程序执行后输出A,B的值是什么?传地址A=6,B=16传值A=2,B=45 .文法G(S)SdABAaA|aBBb|£描述的语言是什么?L(G尸danbm|n>0,m>06证明文法G(S)SSaS|£是二义性的因为文法GS存在句子aa有两个不同的最左推导,所以文法GS是是二义性的。S=>SaS=>SaSa
10、S=>aSaS=>aaS=>aaS=>SaS=>aS=>aSaS=>aaS=>aa7 .已知文法G(S)SBAABS|dBaA|bS|c的预测分析表如下abcd#SS>BASBASBAAABSABSABSdBBaABbSBc给出句子adccd的分析过程。8 .写一个文法G,使其语言为L(G)=albmclanbn|l>=0,m>=1,n>=2所求文法是GS:SABAaAc|DDbD|bBaBb|aabb9 .已知文法G(S):Sa|(T)T-T,S|S的优先关系表如下:关系a(),a-.>.>(<.<
11、;.=.<.)-.>.>,<.<.>.>请计算出该优先关系表所对应的优先函数表。10 .何谓优化?按所涉及的程序范围可分为哪几级优化?对程序进行各种等价变换,使得从变换后的程序出发,能产生更有效的目标代码。三种级别:局部优化、循环优化、全局优化11 .目标代码有哪几种形式?生成目标代码时通常应考虑哪几个问题?11.目标代码通常采用三种形式:机器语言,汇编语言,待装配机器语言模块。应着重考虑的问题:(1)如何使生成的目标代码较短;(2)如何充分利用寄存器,以减少访问内存次数;(3)如何充分利用指令系统的特点。12 .一字母表2=a,b,试写出2上所有以a
12、为首的字组成的正规集相对应的正规式12.正规式a(a|b)*。13 .基本的优化方法有哪几种?13.删除多余运算,代码外提,强度削弱,变换循环控制条件,合并已知量,复写传播和删除无用赋值。14写一个文法G,使其语言为L(G)=abncn|n>014文法GS:SaB|aBbc|bBc15 .考虑下面的程序:,procedurep(x,y,z);beginy:=y+z;z:=y*z+xend;begina:=2;b:=3;p(a+b,b,a);printaend.试问,若参数传递的方式分别采用传地址和传值时,程序执行后输出a的值是什么?15.传值a=2传地址a=1516 .写出表达式ab*(
13、c-d)/e的逆波兰式和三元序列。16.逆波兰式:abcd-*e/+三元序列:oparg1arg2(1)-cd(2)*b1)(3)/(2)e(4)+a(3)17证明文法G(A)A-AA|(A)|£是二义性的。17证明:因为文法GS存在句子()有两个不同的最左推导,所以文法GS是是二义性的。A=>AA=>(A)A=>()A=>()A=>AA=>A=>(A)=>()18.令2=a,b,则正规式a*b|b*a表示的正规集是什么?18.(a*b|b*a)=a,b,ab,ba,aab,bb,a,19何谓DISPLAY表?其作用是什么?19.Dis
14、play表:嵌套层次显示表由于过程嵌套允许内层过程引用外层过程定义的数据,因此,当一个过程运行时必须跟踪它的所有外层过程的最新活动记录起始地址,display表就是用于登记每个外层过程的最新活动记录起始地址。20 .考虑下面的程序:,procedurep(x,y,z;)beginy:=y+2;z:=z+x;endbegina:=5;b:=2;p(a+b,a-b,a);printaend.试问,若参数传递的方式分别采用传地址和传值时,程序执行后输出a的值是什么?20.传地址a=12传值a=521 .写一个文法G,使其语言为L(G)=anbncm|n>0为奇数,m>0为偶数21.所求文
15、法是GS:SHACAaaAbb|abC7ccC|cc22 .写出表达式a:=(b+c)*e+(b+c)/f的逆波兰式和三元序列。23 .一个文法G别是LL(1)文法的充要条件是什么?23.一个文法G别是LL(1)文法的充要条件是:(1)FIRST()AFIRST(份=(2)如果田*>,FIRST®AFOLLOW(A)=24 .已知文法GSSS*aF|aF|*aFF-+aF|+a消除文法左递归和提公共左因子。24.消除左递归SaFS|*aFS'S'*aF$|£F-+aF|+a提公共左因子,文法G'(S)SaFS|*aFS'S'-*
16、aF$|£F7+aF'F'F|&25.符号表的作用是什么?符号表查找和整理技术有哪几种?25.作用:登记源程序中出现的各种名字及其信息,以及了解各阶段的进展状况。主要技术:线性表,对折查找,杂奏技术。三、简答题:1、已知文法GEE->E+T|E-T|TT->T*F|T/F|FF->(E)|i证明(F+T)-T*(E-T)是文法的句型,并给出该句型的短语、直接短语和句柄。2、给出语句While(A<B)DoIf(C<D)thenX=Y+Z的四元式序列四元式序列为:100(j:二,a,b,102)101(j,_,_,107)102(j,c,d,104)103(j,_,_,106)104(,y,z,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 传媒行业股权变更登记及内容制作合作协议
- 演员参演电视剧片场摄影摄像补充协议
- 社区药店药品销售与药品研发销售服务委托管理协议
- 植物新品种权国际合作与市场拓展合同
- 生物技术研发洁净室租赁服务及环境保障合同
- 仲裁调解常年法律咨询顾问服务协议
- 先进工业金属探伤试块租赁与智能检测系统协议
- 森林公园特色民宿整体租赁与生态旅游开发合同
- 电视台主持人全职聘用及节目宣传合作协议
- 离婚协议中知识产权归属及商业秘密保护合同
- 注塑模具设计英文参考文献
- 低压开关柜出厂检验报告-5
- 围术期室性早搏处理
- 《心理健康教育》课件-关爱心灵拥抱阳光
- 肠道疾病的诊疗培训课件
- 新一代国际结算系统需求规格说明书(远期结售汇)V1.0
- 山东省施工现场监理表格目录及格式汇编
- 消化内科护理试题及答案
- 下载深圳市劳动合同
- 色彩与服装色彩搭配
- 医疗废物的分类及处理流程PPT
评论
0/150
提交评论