一种指令优化方法技术

技术编号:19319784 阅读:95 留言:0更新日期:2018-11-03 10:37
本发明专利技术公开一种指令优化方法,包括如下步骤:步骤1,获取结构化文本程序编译后的指令文件,获取数据区、指令区内容;步骤2,分析数据区,提取变量信息;步骤3,分三次遍历指令区,依次采用赋值优化、代数简化、引用点处理的优化方法,对指令进行合并、删除、调整操作;步骤4,将优化后的数据、指令信息存储为文件。此种优化方法可在ST程序编译后,通过分析既定格式的指令文件,进行指令的可靠快速优化,提高程序运行效率。

An instruction optimization method

The invention discloses an instruction optimization method, which comprises the following steps: step 1, acquiring the compiled instruction file of structured text program, acquiring data area and instruction area content; step 2, analyzing data area and extracting variable information; step 3, traversing instruction area three times, adopting assignment optimization, algebraic simplification and reference in turn. The optimization method of point processing is to merge, delete and adjust instructions. Step 4, the optimized data and instruction information are stored as files. After compiling ST program, this optimization method can optimize the instruction reliably and quickly by analyzing the instruction file of the given format, and improve the efficiency of the program.

【技术实现步骤摘要】
一种指令优化方法
本专利技术属于工业控制编程领域,具体涉及结构化文本编译后指令优化处理方法。
技术介绍
IEC61131是国际电工委员会(IEC)颁布的可编程控制器(PLC)国际标准,规范可编程控制器编程工具和应用控制程序的开发。IEC61131-3定义了结构化文本(ST)语言,ST是一种是类似于Pascal的高级编程语言,特别适合复杂的算法技术,程序结构清晰,便于编程人员和操作维护人员进行算法沟通。结构化文本需要转换为装置可运行的指令文件才能运行。在嵌入式装置解释执行二进制指令时,对实时性要求很高。常用的编译器通常是在编译阶段进行优化,但由于局限于局部函数的优化,欠缺整体的考虑,而且采用的优化方法是个黑盒子,存在漏洞且无法验证对比分析。因此,需要一种快速、安全、可靠、高效、独立的指令优化方法,本案由此产生。
技术实现思路
本专利技术的目的,在于提供一种指令优化方法,其可在ST程序编译后,通过分析既定格式的指令文件,进行指令的可靠快速优化,提高程序运行效率。为了达成上述目的,本专利技术的解决方案是:一种指令优化方法,包括如下步骤:步骤1,获取结构化文本程序编译后的指令文件,获取数据区、指本文档来自技高网...

【技术保护点】
1.一种指令优化方法,其特征在于包括如下步骤:步骤1,获取结构化文本程序编译后的指令文件,获取数据区、指令区内容;步骤2,分析数据区,提取变量信息;步骤3,分三次遍历指令区,依次采用赋值优化、代数简化、引用点处理的优化方法,对指令进行合并、删除、调整操作;步骤4,将优化后的数据、指令信息存储为文件。

【技术特征摘要】
1.一种指令优化方法,其特征在于包括如下步骤:步骤1,获取结构化文本程序编译后的指令文件,获取数据区、指令区内容;步骤2,分析数据区,提取变量信息;步骤3,分三次遍历指令区,依次采用赋值优化、代数简化、引用点处理的优化方法,对指令进行合并、删除、调整操作;步骤4,将优化后的数据、指令信息存储为文件。2.如权利要求1所述的一种指令优化方法,其特征在于:所述步骤1中,编译后的指令文件包括文件头、数据区和指令区,数据区中包括引用的外部变量、ST程序定义的变量、编译产生的临时变量,指令区采用三地址码表达式。3.如权利要求2所述的一种指令优化方法,其特征在于:所述指令区三地址码表达式的格式是:指令类型、左操作数在数据区地址、右操作数在数据区地址。4.如权利要求1所述的一种指令优化方法,其特征在于:所述步骤3中,赋值优化的具体内容是:对于右值变量都为常量类型的指令,直接计算常量表达式,并将运算指令修改为赋值指令;对于赋值指令,若赋值的右值变量为临时变量,并且该临时变量为前一条指令的左值变量,则删除该条赋值语句,...

【专利技术属性】
技术研发人员:熊蕙陈宏君张磊文继锋谭良良周磊徐睿曾凯刘坤顾熹谭林丰
申请(专利权)人:南京南瑞继保电气有限公司南京南瑞继保工程技术有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1