首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到17条相似文献,搜索用时 125 毫秒
1.
消除GCC抽象语法树文本中冗余信息的算法研究   总被引:1,自引:0,他引:1  
由GCC编译器对C语言源程序进行语法分析产生的抽象语法树文本存在大量的冗余信息,如果直接对其进行解析,则会产生解析效率低、产生的抽象语法树会占用大量的存储空间的问题.针对此问题,在深入研究(GDC抽象语法树文本结构和解析过程的基础上,提出了一种高效消除冗余的算法,通过实验证明了算法的正确性和适用性,并提出了GCC抽象语法树解析的数学定义.  相似文献   

2.
一种建立控制依赖子图的方法   总被引:1,自引:0,他引:1       下载免费PDF全文
吕蕾  刘弘  李鑫 《计算机工程》2009,35(15):50-52
提出一种基于GCC(GNU Compiler Collection)抽象语法树文本建立控制依赖子图的方法,消除抽象语法树文本中与分析控制流无关的信息,将消除冗余后的抽象语法树文本转化为以邻接表为存储结构的抽象语法树的算法,从而高效地完成了抽象语法树的解析。基于以邻接表为存储结构的抽象语法树建立了控制依赖子图。通过实验证明了该方法的正确性和适用性。  相似文献   

3.
管笑笑  葛宁  阮方 《微计算机信息》2006,22(34):248-250
介绍一种应用于数字系统设计中的基于函数式语言的代码解析方案,主要包括该函数式语言和解析工具的介绍,该语言的词法与语法分析程序的结构介绍,由语法树到语法规则到抽象语法树的生成过程,以及具体的应用实例。该解析方案已经成功应用于数字系统的设计中。  相似文献   

4.
随着C++语言标准的不断演进,词法语法解析工具如JavaCC等对于很多扩充的新特性以及复杂的语法结构不能做到完全支持,这可能会导致抽象语法树生成错误且不完整;针对这一问题,提出一个针对抽象语法树生成错误的处理框架;首先,通过对JavaCC的扩充,实现一套可以解析C++语言的词法语法分析器,生成抽象语法树并记录报错行;其次,根据报错行寻找所在函数区间即不支持或不匹配的语法片段;最后,通过注释函数区间的方式来跳过不支持或不匹配的语法片段进行错误处理并迭代生成抽象语法树;实验结果表明,对抽象语法树生成进行错误处理后可以更全面的分析代码,抽象语法树完成率上升37.8%,分析行数提高3.9倍。  相似文献   

5.
规范抽象语法与抽象语法树的直接生成   总被引:1,自引:0,他引:1  
张幸儿 《计算机学报》1990,13(12):926-933
抽象语法树在很多应用领域中是一个重要的工具,但是在概念上不一致与不规范。本文提出了抽象语法(树)的设计准则,并引进规范抽象语法的概念。本文还给出了为一个源程序从文法直接生成改进的规范抽象语法树的算法。改进的规范抽象语法树结点数远比通常语法分析树少。内存需求量的剧降与应用软件运行的加速,使语法树有实际的应用价值,也可扩大其应用范围。  相似文献   

6.
抽象语法树(abstract syntax tree,AST)作为程序一种重要的中间表示形式,在代码分析领域中有着广泛的应用。如何针对Java程序生成其抽象语法树是在进行代码静态分析前必不可少的工作。分析抽象语法树的构建算法,通过JavaCC解析工具完成对Java文件抽象语法树的构建,该方法可实现代码树状形式的可视化呈现。  相似文献   

7.
基于抽象语法树的数组越界的静态检测方法   总被引:1,自引:0,他引:1  
徐明昌  刘坚 《计算机工程》2006,32(1):108-109,205
针对数组访问越界这一类安全漏洞,以源程序的抽象语法树作为分析对象,提出了一种新的静态解决方案。该方案通过分析数组访问越界安全漏洞的表现,抽象出安全模式,然后根据安全模式以及遍历ast过程中记录的节点属性构建安全规则,最后在安全规则的指导下实现对安全漏洞的检测。  相似文献   

8.
抽象语法树(AST)作为程序的一种中间表示形式,在程序分析等诸多领域有广泛的应用。传统的建立AST的方法是通过词法和语法分析的方法。该文提出了一种利用GCC前端结果建立AST的方法,这种方法将GCC编译源程序产生的AST文件,经过一定的格式转换变为XML文档,然后使用XML文档解析器读取该文档,重新建立AST。  相似文献   

9.
陈永艳  束洪春  戴伟 《计算机科学》2013,40(8):119-123,135
大多数行业定制软件的漏洞检测较困难,而传统的静态漏洞检测方法会产生很多错误的和虚假的信息。针对函数调用前后存在的漏洞问题,提出了基于上下文无关的自顶向下与自底向上相结合的语法解析树的方法,它能够在对函数内部定义不了解或者部分了解的情况下,解析函数调用前后安全契约规则:前置规则和后置规则。同时通过扩展规则表示的XML文法来表示面向对象下,规则中的属性存在继承关系下的契约规则。实验表明,与同类型安全分析工具比较,该方法具有避免函数重复分析、规则可扩展性良好、尤其在自定义对象类和特定环境下自定义参数准确率高等优点。  相似文献   

10.
针对EJB2的容器管理Bean向Java持久化API移植可能出现逻辑错误的问题,全面归纳了容器管理Bean之间七种类型的关联关系的赋值规则,提出了处理各种关联关系赋值规则的通用算法,利用Echpse的抽象语法树工具实现该算法,对Java持久化API的简单Java对象的源代码自动修改,保障了移植后的应用与基于EJB2技术的遗留系统的逻辑一致性.  相似文献   

11.
一种现代汉语句法分析方法的建立与实现   总被引:1,自引:0,他引:1  
本文以7万小学生语文课本分词语料为基础,建立一个隐马尔可夫模型与层次分析法相结合的完全句法分析方法,实现了现代汉语完全句法分析。实验结果表明,该方法具有一定的独创性和高效性,其完全句法分析正确率在封闭和开放测试中分别为92.43%和65.374%。  相似文献   

12.
陈丰  余芸 《电子技术应用》2013,39(4):137-140
研究了常见的SQL注入检测和源代码静态分析扫描的原理,提出Java源代码SQL注入检测算法,该算法通过对Java源代码词法分析和语法分析、建立抽象语法树、定义规则、遍历语法树和跟踪等,检测Java源代码中可能的SQL注入路径,测试结果表明,算法检测效果良好,识别率高。  相似文献   

13.
在概述统计句法分析主要特征的基础上,对目前主流分析方法进行了深入分析,提出了实用化的基于统计的句法分析器必须引入结构信息、上下文信息、词汇信息以及语义信息才能提高性能和可靠性的观点。总结了基于统计的汉语句法分析方法当前的研究现状,最后探讨了基于统计的汉语句法分析方法的不足之处和发展趋势。  相似文献   

14.
句法分析在自然语言处理的实际应用中扮演着重要的角色。当前各少数民族语言包括蒙古语的句法分析研究还处在相对滞后的阶段。同时给其他相关研究带来了相应的困难。该文提出了一种基于双语约束的蒙语的无监督依存分析方法。能够在无需蒙语依存树库及蒙语句法的情况下,对蒙语进行无监督的依存句法分析。并且获得了较好的效果,在人工标注的测试集上有向及无向的正确率分别达到了67.2%及73.3%,可以实际应用到自然语言处理中了。  相似文献   

15.
针对传统的汉语句法分析算法进行改进,采用了自底向上与自顶向下相结合的线图分析方法,分析、设计和实现了一个汉语句法分析原型系统.该系统实现了基于最大词长匹配算法的分词模块、基于统计方法的词性标注模块和基于改进的线图分析算法的句法分析模块.最后对系统进行小规模中文文本试验测试,测试结果表明利用改进的分析算法,使得句法分析效率和分析结果的准确率均有一定程度的提高.  相似文献   

16.
本文以面向数据分析为基本思想,同时结合相似度概率评估技术,实现中文问句句法分析。对于输入问句,首先需要经过词汇层与词性层以及句型和疑问词初选得到片段;然后,基于已构建的数据库,对词汇词性序列的子序列搜索片段,进行片段组合;最后,对输入语句与初选结果进行相似性评估,完成输入语句的组合分析过程。为论证方法有效性,基于200句山西旅游问句做实验。实验结果表明,句法分析的准确率达到96%。  相似文献   

17.
Patent claim parsing can contribute in many patent-related applications, such as patent search, information extraction, machine translation and summarization. However, patent claim parsing is difficult due to the special structure of patent claims. To overcome this difficulty, the challenges facing the patent claim parsing were first investigated and the peculiarities of claim syntax that obstruct dependency parsing were highlighted. To handle these peculiarities, this study proposes a new two-level parser, in which a conventional parser is imbedded. A patent claim is pre-processed in order to remove peculiarities before passed to the conventional parser. The process is based on a new dependency-based syntax called Independent Claim Segment Dependency Syntax (ICSDS). This two-lever parser has demonstrated promising improvement for patent claim parsing on both effectiveness and efficiency over the conventional parser.  相似文献   

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

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