TTCN-3/C编译器研究与设计

来源 :西南交通大学 | 被引量 : 0次 | 上传用户:cnanjr
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
该论文研究的主题是如何将用TTCN-3描述的测试控制数据转变为能够被测试系统执行的可执行测试控制数据的技术.出于多方面考虑,作者没有采用较为普遍的解释方式,而采用了编译的方式.为了便于与测试系统中其他部件融为一体,首先TTCN-3语言转换成C这种高级语言,相关C代码再与其他部分进行联合编译,最终生成机器代码.作者开发的编译器的处理过程分为4个阶段:词法分析、语法分析、语义分析及代码生成.由于不生成最终的机器码,因此,TTCN-3/C编译器生成的代码可以视为中间代码(如许多程序设计编译器的生成汇编语言代码),因此也不需要考虑最终代码优化问题.该编译器采用两遍扫描.第一遍扫描读入TTCN-3源程序,并对其进行词法分析、语法分析和语义分析.第二遍通过遍历第一遍输出的语法树来完成代码生成.由于时间关系,该论文中反映的工作仅涵盖词法分析、语法分析、语义分析、构造语法树、符号表的建立以及相关的错误处理.代码生成部分的具体工作由TTCN-3编译器小组的另一位同学完成.为了减少编译器的开发周期,并考虑到其它的一些因素,词法分析部分是用自动构造词法分析的工具LEX的FLEX版本生成的,语法分析部分是用语法分析器的生成器YACC的BISION版本生成的.语义分析部分作为语法分析的子程序,嵌入了YACC的语法规则部分.其中,语法分析是作者研究的核心部分.语法分析的难点是如何解决YACC语法规则部分的冲突问题.作者针对这一问题总结了三种通过改变TTCN-3语法规则部分的书写格式来减少冲突的办法.在语法分析和语义分析阶段设计了语法树和符号表这两个编译器中重要的数据结构.并且作者抽象出了TTCN-3中和语义相关的内容.最后简要介绍了错误处理,以及代码生成的设计思路.
其他文献
随着网络故障的日益复杂,构建一个具有自我管理、自律特征的网络故障管理系统,不断提高网络故障管理的灵活性和易管理性,就显得更加迫切.本文引入自律计算(Autonomic Computi
随着运动控制技术日益在工业生产中显露出其重要作用,国内外对此技术的重视程度日益加大,投入了相当的财力人力,也逐渐创造了许多新的技术产品。在其发展过程中,百家齐鸣,大
本文对电信行业的运营和服务特点进行分析,将制造业结构化产品的概念和产品数据管理(ProductDataManagement,PDM)技术引入到电信行业,参考普通产品的材料清单(BillofMaterials,BO
安全电子交易协议(Secure Electronic Transaction,简称SET)是Visa和MasterCard两大信用卡公司在1997年联合推出的一个在开放网络上使用信用卡支付的安全电子支付协议。现在,
随着计算机网络技术的飞速发展,从网络所获得的各种形式的资源呈爆炸性增长。电子商务的不断发展使得用户对汇总信息和决策信息的需求更加迫切。面对如此境况,人们的注意力逐
人体免疫系统(HIS)为解决复杂问题提供了一种既独特又具有吸引力的计算模型,因而引起了计算机领域科学家的极大兴趣。利用免疫学的基本理论和模型以及迄今为止所观察到的各种
本文讨论的是适用于手机的Java技术,简表是移动信息设备简表(MIDP,MobileInformationDeviceProfile),它是建立在CLDC基础上的。 本文使用的虚拟机是Intel公司开发的一个高性
随着经济的飞速发展,大型商场的竞争日趋激烈,将信息技术融入商业经营管理,势在必行。本课题就是为了适应这种形势发展而立项,它通过统计不同时间进入商场的客流量,对历史数据进行
本文旨在研究如何通过卫星移动通信、GPS定位技术、GIS地理信息技术实现对远程运行机车的实时跟踪和定位;同时及时获取机车运行信息和机车发生故障时的参数信息,并经过地面监