首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
GPJ_Pascal是PASCAL的一个子集。GPJ_Pascal集成开发环境是编辑、编译和执行GPJ_Pascal程序的平台,具有可视化的用户界面。本文主要介绍了GPJ_Pascal编译器的构造,其中,词法分析器扫描源程序,根据语言的词法规则,分解和识别出每个单词,同时进行词法检查;语法分析器以词法分析器生成的符号表为基础,验证单词符号串序列是否是语言文法的一个句子;在分析过程中,符号表被频繁地用来建立表项、查找表项、填充和引用表项;语法分析子程序采用了自上而下的递归子程序法,在语法分析的同时,也根据程序的语义生成有利于程序移植的相应三元式代码,并提供了出错处理的机制。GPJ_Pascal编译器总体结构完整、清晰,含义明确、易读、易理解,出错少,可靠性大,并易于对GPJ_Pascal的词法和语法进行扩充。  相似文献   

2.
常用于定义符号常量的C语言宏使程序清晰、易读,便于修改;可代替简单函数的C语言带参数宏,比函数调用具有更高的时间效率。宏使用时容易出错且不容易发现,其根本原因是编译器不提供宏展开后的代码,这给编程和教学带来了许多不便。笔者编制了一个实用的宏展开程序对源程序中的宏进行分析、处理,将源程序中的宏调用展开,产生宏展开后的源代码。根据展开的代码可以容易地发现宏使用中的问题,学生也更容易掌握宏的使用。  相似文献   

3.
以KEILC集成开发软件C51编译器生成的汇编代码为例,从编译的角度阐述了C51与汇编语言在存储器单元分配、数据指针和直接地址访问、运算符的运用等方面的区别和联系,指出了用C51进行编程开发容易产生的问题,提出了改善C51程序运行性能的一些措施。  相似文献   

4.
可视化编程环境的出现给技术开发带来了巨大的变化。根据可视化编程的思想设计了一套嵌入式学习系统,该系统分为人机交互界面、编译和下栽三部分。人机交互界面实现了从控件流程图到代码的自动生成:编译模块则利用GNU工具链将代码编译成LM3S101可执行的机器码;最后将可执行代码下载到目标MCU出LM3S101中。  相似文献   

5.
分析U-Boot的启动流程,介绍了在S3C2440上移植U-Boot的方法和步骤.该方法以smdk2410开发板的U-Boot源码为基础,对比分析smdk2410开发板和移植目标平台的硬件差异,修改smdk2410开发板的U-Boot源码,通过VMWare虚拟机搭建的编译环境编译修改好的U-Boot代码,并将系统编译生成的uboot.bin文件下载到S3C2440开发板的NOR Flash存储器中,实现UBoot在S3C2440上的移植.通过移植工作可以发现这种移植方法简便易行,移植后系统运行稳定,并能够大量缩短工程周期.该方法适用于基于ARM和X86等架构的嵌入式Linux系统的Bootloader移植工作.  相似文献   

6.
为了解决算法程序自动映射到可重构媒体处理器的问题,有效提高程序并行执行的效率,提出一种具有自动并行化的任务编译前端. 该任务编译前端通过展开核心循环可提高并行执行度,在数据依赖分析确保运算正确执行的基础上,对循环体内的数组访问进行标量替换,以优化数据传输开销. 实验结果表明,该任务编译前端能有效提高代码并行性和优化数据传输能力,与Garp C编译器的编译前端相比,该任务编译前端设计的性能可提升约2~4倍.  相似文献   

7.
在c#.net程序中利用sql Data Adapter或者sql Command渊用存储过程比较方便,但是存在没有测用代码设计的支持,而只有在运行程序时执行到相应的语句,才能检企调用的代码是否有问题的缺点。如果在测试过程没有把所有可能执行到的语句都测试一次,程序往往会出现问题。针对这个缺点,提出利用数据集设计器调用存储过程。将存储过程变为强类型对象,这样编译器就可以在编译期间检查所有可能出现的错误。解决Sql Data Adapter或者Sql Command调用存储过程的不足的同时,还可以简化调用存储过程的复杂度。  相似文献   

8.
基于EJB的构件组装编译技术研究与实现   总被引:1,自引:0,他引:1  
在对构件组装编译的研究过程中,提出一种基于EJB的构件组装编译技术解决方案。利用WEBLOGIC平台部署EJB构件,采用XML技术对构件组装规约进行形式化描述,对XML描述文档进行组装编译的解析,利用程序模板自动生成程序代码,最后采用标准代码编译器进行编译,完成EJB构件组装。实例证明了该技术的可行性。  相似文献   

9.
模型编译器通过词法和语法分析,解析出模型信息,并生成特定平台的模型框架代码,提高了模型框架代码生成的速度和质量。然而大多数模型编译器都是生成某一特定平台的框架代码,可扩展性和可维护性较差。文中提出了一种基于MDA的分布式对象模型编译器设计方法,该方法通过灵活的转换规则配置,可以生成多目标平台模型,进一步生成该平台框架代码,从而有效提高分布式对象模型编译器的扩展性和可维护性。  相似文献   

10.
论述了数控系统NC代码编译技术的发展现状,通过对NC代码程序规则的分析,围绕NC代码编译模块的实现问题,着重阐述了NC代码词法、语法识别的方法和编译模块的设计过程.  相似文献   

11.
为了保护软件知识产权,阻止逆向工程和静态分析,研究内置迷惑技术的编译器.提出交叉控制流的代码迷惑技术以及应用这种技术的编译实现方案.给出if语句和while循环语句控制流交叉原理,产生多入口多出口控制块,使代码控制流复杂化.同时把被保护代码块放置于交叉控制块间,以达到隐蔽真实控制流的目的,因而能有效阻止自动反编译并增强软件分析的难度.由于源代码级不可形成控制交叉,给出内置此功能的兼容编译实现方法,使得程序员书写的代码简单而安全.经仿真和分析,提出的技术对代码具有很好的保护效果,编译后的目标指令有略微增加,而运行效率几乎不受影响.  相似文献   

12.
基于MATLAB/RTW的车载无刷直流电机调速系统代码自动生成   总被引:5,自引:0,他引:5  
介绍了一种根据系统仿真模型自动生成嵌入式C代码的嵌入式系统设计方法.结合基于英飞凌C164CI微控制器的车载无刷直流电机调速系统的开发,详细说明了使用MATLAB/RTW(实时代码工作空间)工具集将系统仿真模型自动转换为嵌入式系统C代码并编译下载到微控制器中运行的方法.还对仿真和实验数据进行了比较分析.结果表明,系统实际运行结果与仿真结果之间具有很高的相似性,从而验证了自动生成代码的正确性和可靠性.  相似文献   

13.
一种基于DSP的数字电子负载设计方法   总被引:3,自引:1,他引:2  
TMS320F2812D6P是运动控制系统很好的硬件设计平台,但传统的DSP代码开发方法周期较长,效率不高.用户通过使用Matlab公司针对DSP应用控制系统而开发的嵌入式目标模块,不仅可以进行电路的系统级仿真,还可编译生成相应的C语言代码下载到目标板,直接运行程序,从而简化DSP系统开发过程,提高开发效率.文章以电子负载的数字化控制系统的设计为例,给出了MATLAB/Simulink平台上DSP代码开发的设计方法.  相似文献   

14.
为了实现源码分析工具对多语言的支持,克服目前构建分析工具重用率低和实现复杂的弊端,提出一种多语言源程序函数调用关系图的生成方法。利用GNU编译器集合(GCC)的插件在GCC中间表示层Call—graph上提取函数调用关系,并将调用关系转换成图形描述语言,然后利用Graphviz画出函数调用关系图。所提方法与前端语言无关,可支持多种语言源程序函数关系的提取,且无需改动GCC编译器内部结构。实验结果表明,同E—gypt方法相比,新方法在处理时间和存储代价方面都有明显的降低。  相似文献   

15.
为了满足专用指令处理器(ASIP)存储器约束和代码执行的实时性要求,提出了一种同时考虑代码选择和寄存器分配的代码综合生成算法,同步处理代码生成的子问题.该算法基于最优化原理,把无环有向图(DAG)的所有节点构造成一个调度矩阵,把寻找代码优化的问题转化成在调度DAG中寻找一条优化路径,大大降低了算法的时间复杂度.并应用算法构造了一个编译器后端,测试表明,该算法能够正确地生成目标代码,和传统的分步优化算法相比,减小了目标代码的空间尺寸,降低了寄存器溢出的几率.  相似文献   

16.
首先从系统层面和编译层面分析了Windows和C++异常处理的基本原理,指出了基于Windows的C++异常处理机制在使用过程中可能出现的逻辑错误,以及Windows运行时库中个别函数可能存在的此类安全隐患。为了更好地保证C++代码安全性和健壮性,综合上述研究提出了审计C++异常处理的方法和建议。  相似文献   

17.
Aspen Plus功能扩展方法探讨   总被引:3,自引:1,他引:2  
对化工过程模拟软件Aspen Plus的用户模型的开发进行了分析,探讨了AspenPlus用户模型开发步骤和编写方法。Aspen Plus支持6种用户模型,其编写除了要遵循一个通用的规则外,针对每一种用户模型又有不同的定义方式。用户模型的编译和连接通过Aspen Plus提供的编译程序aspcomp和asplink来完成,最终生成一个目标模块文件或动态连接库。将该目标模块文件或动态连接库复制到Aspen Plus的执行目录下,即完成一个用户模型的开发全过程。最后给出一个具体用户模型的例子,以帮助用户熟悉该方法。  相似文献   

18.
MCS-51单片机工发系统的主要功能是完成对类C高级语言的编译工作,最终形成的目标代码是MCS-51系列单片机汇编语言程序,探索该领域的可行性工作,提出了一套完整的设计方案,软件使用BorladnDelphi3.0面向对象语言基于Windows开发完成,提供了统一的集成化开发界面,包括一个多页面的全功能的编辑器,编译器和帮助系统。  相似文献   

19.
首先从系统层面和编译层面分析了Windows和C+KG-*3+异常处理的基本原理,指出了基于Windows的C+KG-*3+异常处理机制在使用过程中可能出现的逻辑错误,以及Windows运行时库中个别函数可能存在的此类安全隐患。为了更好地保证C+KG-*3+代码安全性和健壮性,综合上述研究提出了审计C+KG-*3+异常处理的方法和建议。  相似文献   

20.
针对现有的C2VHDL编译器中指针编译技术所存在的缺陷,通过对传统指针分析算法进行研究,在基于低级虚似机(LLVM)面向CPU-FPGA应用的可重构编译器ASCRA架构上,设计并实现了一种以基本块为分析粒度的基于控制流图的流敏感上下文敏感指针分析算法。在可重构编译器ASCRA生成硬件VHDL程序时提供指针访存控制辅助信息。实验结果表明:在保证C2VHDL结果正确的前提下,该算法在简化了分析过程的同时,能够达到与流敏感指针分析相同的精度。与指针还原技术相比,该算法能够支持更多的指针数据类型。采用该算法的编译器ASCRA生成的硬件程序在硬件资源占用情况和运行速度两方面与指针还原技术相比都能够达到相同的硬件效果。  相似文献   

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

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