当前位置:大学毕业论文> 论文范文>材料浏览

关于图元论文范文写作 基于图元装接模式由程序流程图自动生成源代码相关论文写作资料

主题:图元论文写作 时间:2024-02-27

基于图元装接模式由程序流程图自动生成源代码,本文关于图元论文范文,可以做为相关论文参考文献,与写作提纲思路参考。

图元论文参考文献:

图元论文参考文献 论文程序代码论文图程序员杂志商业模式论文

摘 要:针对程序流程图到代码自动翻译过程中,通常需要经过代码优化及二次编程,翻译效率不高,提出基于图元装接模式的流程图到C语言源程序转换的解决方案,实现流程图到源程序的双向转换.由图元同步产生代码元,通过装接自动生成程序代码.所生成的程序代码无需修改,可直接编译运行.通过词法分析,识别并产生代码元和对应图元,可逆向生成流程图.其有效性在原型系统中得到了验证.

关键词:C语言;流程图;程序代码;自动翻译

中图分类号:TP311.5 文献标识码:A

1 引言(Introduction)

对于程序设计语言初学者来说,通过画流程图来学习程序编码,将程序代码与直观的图形相结合,可以起到事半功倍的学习效果.若用草图来绘制程序流程图,并且实现流程图的自动识别和代码生成,不仅符合人的思维习惯,也将大大方便程序设计课程的教学,同时也可应用于程序员的快速程序设计和编码.

目前,国内外很多学者对手绘草图识别的研究已有较大进展,可较好地识别程序流程图中的简单图元符号.但是对程序流程图控制结构的判别,以及代码的自动翻译的研究较少.程序流程图到代码自动生成的流程,通常分为草图识别和代码优化两个阶段,当前的研究热点或技术难点是图元的识别和翻译,文献[1,2]设计了图元节点存储结构,在图元识别的基础上,提出基于上下文的程序流程草图自动翻译算法,实现了在线手绘程序流程草图到C语言代码的自动翻译.但该系统所能判别的基本图元比较单一,而且在判断程序流程图控制结构时,采用栈技术,若用户采用非习惯性思维画图,可能会导致栈顶元素无法正确判别,在一定程度上影响识别结果.文献[3-5]则是对程序流程图到代码的自动生成技术的研究,然而所研究的程序流程图到代码的自动生成工具对流程图有诸多限制,并不是基于标准的程序流程图.文献[6]针对标准的程序流程图,实现程序流程图到代码的自动生成,并且对于含有continue/break/return语义的程序流程图也能够很好地识别并生成相应的代码.文献[7]融合图形化和文本语言两种编程方式的优点,提出流程图与类C语言双向实时转换方法:一方面通过遍历模块树并参照功能模块封装的库函数和语句完成流程图到类C语言的转换;另一方面采用XML作为中间代码完成类C语言到流程图的转换.文献[8]实现了程序流程图的自动生成和实时修改,提高了程序流程图的设计效率,但没有实现程序代码的同步生成.

本文结合上述文献的研究成果,提出手工草图→机绘流程图→C语言源程序转换的解决方案,目前已实现了机绘流程图到源程序的双向转换,即按照“图元+装接”模式绘制流程图,同步生成程序代码;或通过本系统生成的源代码,逆向生成流程图.

2 图元与代码元(The graphics primitive and the code primitive)

2.1 图元

C语言流程图有传统流程图(FC)、盒图(N-S)、PAD等.其中传统流程图比较直观、形式化,易于理解.但由于对流程连接线的使用没有严格限制,使流程随意转来转去,缺少规律.特别是传统流程图绘制后,修改流程图需要大量移动流程连接线,非常烦琐.为此,我们根据C语言程序语句基本结构,将基本图形和连接线组合,定义了六种图元(图1):if图元、for图元、while图元、do-while图元、switch图元、基本语句图元.图元中菱形为决策图标,矩形为基本语句图标,实线为普通连接线,虚线为图元装接线.

根据程序语句的基本功能,基本语句图元又分为文件包含、常量定义、变量定义、键盘输入、屏幕输出、文件打开、文件关闭、文件输入、文件输出、赋值语句,以及其他基本语句(通用语句)等十类.

2.2 代码元

代码元是与图元相对应的程序代码,分别有if代码元、for代码元、while代码元、do-while代码元、switch代码元、基本语句代码元(表1).表中的代码元对应的程序代码只是其初始状态,呈现为程序语句的骨架,只有通过进一步处理之后,才能成为一条完整的程序语句.

3 图元处理与流程图绘制(Primitive processing and flowchart drawing)

3.1 图元生成

(1)定义图元基类

图元基类包含图元必备元素和基本操作.必备元素主要有图元的坐标位置、高度、宽度、图元文本(含量代码与注释)、友元信息、图元装接信息、图元编辑信息等.基本操作有位置移动、大小改变、选择、取消选择、插入图元、删除图元、绘制图元.

public class FC_Control //图元控件基类

{

private int x,y; //图元坐标

private int width,height; //图元宽度与高度

private int wLeft,wRight;//图元左宽与右宽

private bool selected; //图元选中标识

private int child_brother;//图元装接信息

//1 为左孩子结点,2为右孩子结点,0为兄弟结点,-1为初始值(无效)

private CODE_Control friendObj;//图元友元信息

public string[] txtCode等于new string[11];//图元文本信息

public string[] txtComment等于new string[11];//图元文本信息

virtual public void moveTo(int x,int y) //移动到新坐标

{

结论:关于本文可作为图元方面的大学硕士与本科毕业论文图元论文开题报告范文和职称论文论文写作参考文献下载。

机器视觉检测中的平面轮廓图元识别方法
摘 要:本文介绍了视觉检测的原理,对几种典型的图像边缘检测算子进行研究,分析了这些算子在视觉检测中的优缺点,这对进一步学习和寻找更好的图像边缘检。

思维导图并小组合作模式在基础英语课堂中的应用
【摘要】随着课程的不断改革,培养学生的思辨力变得越来越重要,尤其传统的英语教学模式基本上以教师为中心、以教材为中心、以教学为中心。虽然也有些互动。

后读图时代下基于视觉表象特征网络舆论生成
【摘要】公众的视觉认同是基于公共形象的传播而构建的审美意识形态。图像符号的象征意义已经渗入日常生活,在不同语境中改变着公众的视觉评价。我们应该把。

移动应用开发专业校企双元人才培养模式
摘 要:在移动应用开发课程教学中,采用传统学习模式和方法,只能机械地教授学生一些基本的理论知识和操作技能,不能达到很好的教学效果,因此,提出校企。

论文大全