一种新的IEC61131―3语言编译器中间结构的设计方案
2.3 表达式操作符
表达式操作符包括所有的高级语言运算符,如赋值、算术、关系、逻辑运算符等,以赋值、取地址和加法运算符为例,其表达式操作符号主要属性如表3所列。本文引用地址://m.amcfsurvey.com/article/202533.htm
3 ST语言代码对应的中间结构表示
本节以一段ST的POU程序为例,将其转化为中间结构,以证明中间结构的可行性。假设此POU中所定义的整型变量为a,b,那么,其POU
程序如下:
a:=l:
b:=a+2:
IF (a=b) THEN
a:=a+1:
ELSE
b:=b+1:
END_IF;
对应的中间结构如图2所示。其中,EQUAL是等值运算符的宏定义。
结束语
本文介绍了一种三叉树的中间结构设计方案。该方案充分考虑了IEC61131―3组态软件的多前端特性,并能够做到不依赖于后端,同时为各语言翻译前端的设计提供了很大的便利。这种中间结构设计在HCC(Hollysys C Compiler)编译器的开发中已经实现,其可行性也得到了验证,并已应用在实际的组态软件开发项目中。
评论