实验报告班级:2011211314姓名:oneseven学号:一.题目:语义分析程序的设计与实现。二.实验内容:编写语义分析程序,实现对算术表达式的类型检查和求值。要求所分析算术表达式由如下的文法产生。E-E+T|E-T|TT-T*F|T/F|FF-num.num|(E)|num三.实验要求:用自底向上的语法制导翻译技术实现对表达式的分析和翻译。(1)写出满足要求的语法制导定义或翻译方案。(2)编写分析程序,实现对表达式的类型进行检查和求值,并输出:1.分析过程中所有产生式。2.识别出的表达式的类型。3.识别出的表达式的值。(3)实验方法:可以选用以下两种方法之一。1.自己编写分析程序。2.利用YACC自动生成工具。四.实验分析:1.步骤:(1)根据题目所给出的文法构造相应的拓广文法,并求出该文法各非终结符的FIRST、FOLLOW集合;(2)构造拓广文法的项目集规范族,并构造出识别所有前缀的DFA;(3)构造文法的LR分析表;(4)由此构造LR分析程序。(5)写出满足要求的翻译方案。(6)实现对表达式的类型进行检查和求值,并输出。2.实现方法:1.输入缓冲区为一个字符型数组,读入输入的算术表达式并保存在此,以’$’结束;2.定义两个二维整形数组,goto和action,其值大于零代表移进操作,小于零代表规约操作,引进的状态或规约用到的产生式又绝对值表示。等于零代表出现错误。等于特殊值-10代表acc.状态。3.处理输入表达式中代表id和num的子串,分别将它们转化为'i'和'n'进行分析;4.根据分析表,相应进行语法分析,移近或规约,按算法4.3的步骤完成过程。3、管路敷设技术通过管线敷设技术,不仅可以解决吊顶层配置不规范高中资料试卷问题,而且可保障各类管路习题到位。在管路敷设过程中,要加强看护关于管路高中资料试卷连接管口处理高中资料试卷弯扁度固定盒位置.保护层防腐跨接地线弯曲半径标高等,要求技术交底。管线敷设技术中包含线槽、管架等多项方式,为解决高中语文电气课件中管壁薄、接口不严等问题,合理利用管线敷设技术。线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。4、电气课件中调试技术对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料试卷相互作用与相互关系,根据生产工艺高中资料试卷要求,对电气设备进行空载与带负荷下高中资料试卷调控试验;对设备进行调整使其在正常工况下与过度工作下都可以正常工作;对于继电保护进行整核对定值,审核与校对图纸,编写复杂设备与装置高中资料试卷调试方案,编写重要设备高中资料试卷试验方案以及系统启动方案;对整套启动过程中高中资料试卷电气设备进行调试工作并且进行过关运行高中资料试卷技术指导。对于调试过程中高中资料试卷技术问题,作为调试人员,需要在事前掌握图纸资料、设备制造厂家出具高中资料试卷试验报告与相关技术资料,并且了解现场设备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。5、电气设备调试高中资料试卷技术电力保护装置调试技术,电力保护高中资料试卷配置技术是指机组在进行继电保护高中资料试卷总体配置时,需要在最大限度内来确保机组高中资料试卷安全,并且尽可能地缩小故障高中资料试卷破坏范围,或者对某些异常高中资料试卷工况进行自动处理,尤其要避免错误高中资料试卷保护装置动作,并且拒绝动作,来避免不必要高中资料试卷突然停机。因此,电力高中资料试卷保护装置调试技术,要求电力保护装置做到准确灵活。对于差动保护装置高中资料试卷调试技术是指发电机一变压器组在发生内部故障时,需要进行外部电源高中资料试卷切除从而采用高中资料试卷主要保护装置。5.由于要求进行类型检查和求值,所以可以定义两个综合属性,一个记录值一个记录类型,存放在结构中,一并传入传出。输出的产生式可以作为虚拟综合属性,在产生式的最后打印出来。将类型检查和求值归于一次扫描,把类型和值赋给相应的表达式。由于只具有综合属性,故可以用S属性的自底向上翻译实现,利用LR分析程序来实现,只需扩充分析站和改造分析程序。本次实验是基于语法分析方法3,因此相关的代码和文档类似于上次实验。3.翻译方案:E-E’+T{E.val=E’.val+T.val}{if(E’.type==real||T.type==real)E.type=real;elseE.type=integer;}E-E’-T{E.val=E’.val-T.val}{if(E’.type==real||T.type==real)E.type=real;elseE.type=integer;}E-T{E.val=T.val}{E.type=T.type}T-T’*F{T.val=T’.val*F.val}{if(T’.type==real||F.type==real)T.type=real;elseT.type=integer;}T-T’/F{T.val=T’.val/F.val}{if(T’.type==real||F.type==real)T.type=real;elseT.type=integer;}T-F{T.val=F.val}{T.type=F.type}F-num.num{F.val=num.num.val}{F.type=real}F-(E){F.val=E.val}{F.type=E.type}F-num{F.val=num.val}{F.type=integer}3.计算过程:文法对应的拓广文法为:(0)E’-E(1)E-E+T(2)E-E-T(3)E-T(4)T-T*F(5)T-T/F(6)T-F(7)F-num.num(8)F-(E)(9)F-num求的各个非终结符的FIRST、FOLLOW集合为:ETFFIRST(,num(,num(,numFOLLOW$,),+,-$,),+,-,*,/$,),+,-,*,/4.SLR(1)分析表为:3、管路敷设技术通过管线敷设技术,不仅可以解决吊顶层配置不规范高中资料试卷问题,而且可保障各类管路习题到位。在管路敷设过程中,要加强看护关于管路高中资料试卷连接管口处理高中资料试卷弯扁度固定盒位置.保护层防腐跨接地线弯曲半径标高等,要求技术交底。管线敷设技术中包含线槽、管架等多项方式,为解决高中语文电气课件中管壁薄、接口不严等问题,合理利用管线敷设技术。线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。4、电气课件中调试技术对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料试卷相互作用与相互关系,根据生产工艺高中资料试卷要求,对电气设备进行空载与带负荷下高中资料试卷调控试验;对设备进行调整使其在正常工况下与过度工作下都可以正常工作;对于继电保护进行整核对定值,审核与校对图纸,编写复杂设备与装置高中资料试卷调试方案,编写重要设备高中资料试卷试验方案以及系统启动方案;对整套启动过程中高中资料试卷电气设备进行调试工作并且进行过关运行高中资料试卷技术指导。对于调试过程中高中资料试卷技术问题,作为调试人员,需要在事前掌握图纸资料、设备制造厂家出具高中资料试卷试验报告与相关技术资料,并且了解现场设备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。5、电气设备调试高中资料试卷技术电力保护装置调试技术,电力保护高中资料试卷配置技术是指机组在进行继电保护高中资料试卷总体配置时,需要在最大限度内来确保机组高中资料试卷安全,并且尽可能地缩小故障高中资料试卷破坏范围,或者对某些异常高中资料试卷工况进行自动处理,尤其要避免错误高中资料试卷保护装置动作,并且拒绝动作,来避免不必要高中资料试卷突然停机。因此,电力高中资料试卷保护装置调试技术,要求电力保护装置做到准确灵活。对于差动保护装置高中资料试卷调试技术是指发电机一变压器组在发生内部故障时,需要进行外部电源高中资料试卷切除从而采用高中资料试卷主要保护装置。状态+-*/().Num$ETF0S5S41231S6S7acc2R3R3S8S9R3R33R6R6R6R6R6R64R9R9R9R9R9S10R95S5S411236S5S41237S5S41338S5S4149S5S41510S1611S6S7S1712R1R1S9S10R1R113R2R2S9S10R2R214R4R4R4R4R4R415R5R5R5R5R5R516R7R7R7R7R7R717R8R8R8rR8R8R85.主程序说明:voidGet_str(void)//获取待分析输入表达式intJudge_num(charch)//判断字符是否为构成num的数字intGet_ternum(charch)//返回终结符在终结符表中的下标intGet_unternum(charch)//返回非终结符在非终结符表中的下标intJudge_ter(charch)//判断字符是否为终结符intJudge_unter(charch)//判断字符是否为非终结符voidfanyi(intchioce)//翻译方案voidAnalyse_output(void)//使用LR语法预测分析表分析输入的表达式并输出分析结果五.代码。#includeiostream#includeiomanip#includemath.husingnamespacestd;charterminal[9]={'+','-','*','/','(',')','.','n','$'};//终结符表charunterminal[3]={'E','T','F'};//非终结符表chargrammar[10][10]={//输出产生式SE,EE+T,EE-T,ET,TT*F,3、管路敷设技术通过管线敷设技术,不仅可以解决吊顶层配置不规范高中资料试卷问题,而且可保障各类管路习题到位。在管路敷设过程中,要加强看护关于管路高中资料试卷连接管口处理高中资料试卷弯扁度固定盒位置.保护层防腐跨接地线弯曲半径标高等,要求技术交底。管线敷设技术中包含线槽、管架等多项方式,为解决高中语文电气课件中管壁薄、接口不严等问题,合理利用管线敷设技术。线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。4、电气课件中调试技术对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料试卷相互作用与相互关系,根据生产工艺高中资料试卷要求,对电气设备进行空载与带负荷下高中资料试卷调控试验;对设备进行调整使其在正常工况下与过度工作下都可以正常工作;对于继电保护进行整核对定值,审核与校对图纸,编写复杂设备与装置高中资料试卷调试方案,编写重要设备高中资料试卷试验方案以及系统启动方案;对整套启动过程中高中资料试卷电气设备进行调试工作并且进行过关运行高中资料试卷技术指导。对于调试过程中高中资料试卷技术问题,作为调试人员,需要在事前掌握图纸资料、设备制造厂家出具高中资料试卷试验报告与相关技术资料,并且了解现场设备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。5、电气设备调试高中资料试卷技术电力保护装置调试技术,电力保护高中资料试卷配置技术是指机组在进行继电保护高中资料试卷总体配置时,需要在最大限度内来确保机组高中资料试卷安全,并且尽可能地缩小故障高中资料试卷破坏范围,或者对某些异常高中资料试卷工况进行自动处理,尤其要避免错误高中资料试卷保护装置动作,并且拒绝动作,来避免