首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 62 毫秒
1.
VPGE(Visual Parser Generation Environment)是一个可视化语法分析器集成开发环境,除了具有良好的界面和强大的调试功能,其LALR(1)分析器的生成速度达到并超过公认的分析器生成速度最快的LALR(1)分析器自动生成器Bison,所能处理的文法规模也优于Bison.本文在DeRemer和Pennello的LALR(1)分析器自动生成基本原理的基础上,在设计数据结构和算法实现中采用了大量优化技术.  相似文献   

2.
LALR(1)分析程序生成系统在编译器构造领域以外被许多普通软件开发者学习和使用.为帮助用户理解LALR(1)分析器方法,编写出正确、完整、无语法分析冲突的文法规范,严格定义了使用LALR(1)分析器生成器时用户可能遇到的几类文法问题,描述一个为帮助用户解决这些问题而开发的LALR(1)分析器可视化和断点调试系统VPGE.VPGE以多种视图显示LALR(1)分析器的数据结构,包括状态栈、符号栈、输入符号串、分析树和底层的自动机,支持LR分析动作的单步执行和断点调试.性能实验结果表明,VPGE比GNU的Bison有更快的分析器生成速度,从而提供了一个LALR(1)文法及分析器的快速交互式调试环境.  相似文献   

3.
程序设计语言的GLR优化分析   总被引:1,自引:0,他引:1       下载免费PDF全文
李虎  金茂忠  许福  张敏 《软件学报》2005,16(2):174-183
阐述了在程序设计语言语法分析器的构造中采用通用LR(generalized LR,简称GLR)分析算法的动机.提出了一个多层次的优化策略,加快了GLR分析器的分析速度.为基本的GLR算法增加了必要的运行时控制机制,以实现语法分析时调用文法规则附带的语义动作,化解输入串的二义性,同时避免GLR分析器可能存在的语义动作延迟问题.优化后的算法已在一个可视化语法分析器自动生成环境VPGE中实现.实验结果表明,在分析确定性的编程语言时,自动生成的GLR分析器的分析速度与自由软件基金会的Bison生成的LALR(1)分析器的分析速度有可比性.  相似文献   

4.
传统的分析器生成器多采用LALR(1)、LL(1)等确定性分析方法.近年来,随着软件再(逆向)工程的发展,GLR等非确定性的分析方法逐渐应用到分析器生成器中,但目前尚未有公开发表的文献提出并解决了自动生成的GLR分析器的错误处理和恢复问题.文中提出了一种基于子串分析的错误恢复方法,实验结果表明,该方法可以有效侦测和恢复输入串中的语法错误,具有较高的错误处理效率,有望应用到以GLR为核心算法的分析器生成器中.  相似文献   

5.
GLR分析方法主要用于自然语言的处理分析,较少应用于软件逆向工程领域的语法分析.针对软件逆向工程领域的语法分析特点,分析传统确定性分析算法的局限性,阐述采用GLR分析算法的目的.通过实例剖析GLR算法的主要性能瓶颈,从分析表构造、分析动作执行等多个层面对算法进行优化,提出一种面向软件逆向工程的GLR优化算法.该算法已在一个可视化语法分析器自动生成环境中实现.实验结果表明,在分析无二义性输入串时,该优化算法与传统的LALR(1)文法具有可比性,实用价值较高.  相似文献   

6.
马竹根 《福建电脑》2006,(1):170-171
ANTLR是一种基于LL(k)文法的语法分析程序生成工具,其生成的分析器默认使用Java描述,而不是更高效的C 。本文介绍了在Windows平台下,借助Visua1 C 6.0组织工程,使用ANTLR生成C 描述的分析器的方法,并给出了一个实例。最后,本文对ANTLR本身做出了一点改进。  相似文献   

7.
基于UML状态图的模型信息自动提取技术研究   总被引:1,自引:0,他引:1  
宋瑾钰  魏仰苏 《计算机工程与设计》2007,28(20):4860-4861,4864
UML是OMG用于软件系统的可视化、详述、构造和文档化的统一建模语言,状态图是UML模型的重要组成部分,用于描述系统的动态行为.在研究Rational Rose及其状态图文档的基础上,提出了通过UML状态图自动提取模型信息的两种方法-基于LALR(1)文法和基于Rose的扩展接口的提取方法,并对两种方法进行了比较分析.自动提取模型信息技术提高了协议测试序列的自动生成效率.  相似文献   

8.
叶大兴 《计算机学报》1989,12(10):772-778
本文提出了自动构造增量式LR(1)句法分析器的一个有效方法.用该方法构造得到的分析器不仅允许对原语句作多处修改,而且还允许奠基的LR(1)文法含有右边为空的产生式。为了分析一个经过修改的语句,它们所需的空间和时间分别与该语句的长度和所作修改的总和形成线性比.为了进行实验,本方法已在Motorola-68010机上获得实现。  相似文献   

9.
SLR(1)词/语法分析的自动构造   总被引:5,自引:0,他引:5  
主要讨论了SLR(1)词/语法分析器的自动构造,自动生成的SLR(1)语法分析器可从自动生成的SLR(1)词法分析器中获得测试数据进行语法分析,论文相关的软件除可用于编译原理课程教学演示外,还可用于实际编译程序的SLR(1)词/语法分析器的自动构造。由于具有SLR(1)分析表自动构造功能,因此该软件还可作为软件工具用于程序设计语言本身的设计和构造。  相似文献   

10.
LR分析法在词法分析器自动构造中的应用   总被引:7,自引:2,他引:7  
温敬和 《计算机工程》2001,27(7):188-190
提出了一种新的自动构造编译程序词法分析器的方法,LR分析法通常用于语法分析,但只要适当修改LR分析总控程序,就可将LR分析法用于词法分析器的自动构造。该方法的优点不仅在于将词法分析器自动构造方法与语法分析器自动构造方法统一,简化了编译程序的设计和构造,而且该方法自动化程序较高,只要确定描述单词的文法和词形编码表,便可自动生成任何程序设计语言编译程序的词法分析器。  相似文献   

11.
12.
E. Klein  M. Martin 《Software》1989,19(11):1015-1028
PGS is a parser generating system accepting LALR(1) and related grammars in extended BNF notation and producing parsers based on table-driven stack automata. To enable syntax-directed translation, semantic actions can be attached to rules of the input grammar. An attribution mechanism allows the transfer of information between rules. The generated parsers have an automatic error recovery which can be tailored to satisfy specific needs of the language to be accepted. PGS generates parsers written in Pascal, Modula-2, C or Ada. Compared with existing systems, e.g. YACC1, a parser generated by PGS is twice as fast and the parse tables require 25 per cent less storage. This paper gives a survey of algorithms involved in the generator and the generated parsers, and compares them with algorithms used in other systems. In detail, it compares several parse-table representations and their implications for space and time efficiency of the generated parsers.  相似文献   

13.
It is shown that in many cases the trivial upper bound 2|G|k + 1 on the number of states of an LR(k) parser for a grammar G is too conservative. In particular, if G is not right-recursive, the canonical LR(k) parser for G has at most |Gk|G|·2|G| states. Examples of grammars with large LR(k) parsers are given.  相似文献   

14.
LL(1) grammars have the conceptual and practical advantage that they allow the compiler writer to view the grammar as a program; this allows a more natural positioning of semantic actions and a simple attribute mechanism. Resulting parsers can be constructed that achieve fully automatic error-recovery, which allows the compiler writer to ignore totally the issue of syntax errors. Measurement shows that such parsers can be reasonably efficient.  相似文献   

15.
查峰 《计算机工程》2009,35(4):48-50
将树形数据结构用于最小化DOM模型XML编解码器的开发。在解析XML文本时,基于Expat解释器将XML字符串构造成树状结构;编码时构造DOM树结构,采用非递归深度优先法遍历树,将其串行化成XML串。本编解码器解决了国际化语言关键问题,是一个通用、高效的工业级XML应用支撑模块。  相似文献   

16.
汪万根 《计算机工程》2009,35(8):107-109
针对在XML文档树模型中进行后兄弟节点查询时内存消耗大、匹配效率低等缺陷,提出一种基于XML数据流与栈的后兄弟查询算法。采用SAX解析器与结构连接方法,对XML文档中所有已知节点与后兄弟节点进行精确匹配并输出。结果表明,该算法具有适用范围广、占用系统资源少、匹配效率高等优势。  相似文献   

17.
采用面向对象技术设计可视化程序设计语言的编译系统,通过对复杂的可视化图片语法进行分析,将各语法现象以语法单元类的形式进行抽象分类,提出了编译器-编译器的设计策略,给出了从可视化图片设计语言到伪指令代码的解决方法.主要研究在面向对象的编辑环境中如何实现满足硬件设备控制器的稳定、高效的编译系统.通过将可视化程序语言分析器(VPLPG)和小型的类C编译(LCC)器配合使用最终实现可视化程序设计语言的编译系统.  相似文献   

18.
魏兰  李文锋 《计算机工程》2007,33(13):104-106
采用面向对象技术设计可视化程序设计语言的编译系统,通过对复杂的可视化图片语法进行分析,将各语法现象以语法单元类的形式进行抽象分类,提出了编译器-编译器的设计策略,给出了从可视化图片设计语言到伪指令代码的解决方法。主要研究在面向对象的编辑环境中如何实现满足硬件设备控制器的稳定、高效的编译系统。通过将可视化程序语言分析器(VPLPG)和小型的类C编译(LCC)器配合使用最终实现可视化程序设计语言的编译系统。  相似文献   

19.
NL句法分析中超语法符合现象的处理   总被引:1,自引:0,他引:1  
本文回顾并总结了句法层次上六种不同类型的超语法符合(extra grammaticality,简称EG)现象及它们的恢复原则, 描述了如何用扩充的GLR分析器(Extended GLR Parser简称EGLR)完整解决其中四种、部分解决其余两种现象的技术。在处理后两种现象时, 要涉及语义问题。  相似文献   

20.
The lemma in “An improved LALR(k) parser generation for regular right part grammars” [Inform. Process. Lett. 47 (1993) 123-129] to test the applicability of the method is shown to be false by means of a counter-example grammar.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号