一种新的IEC31131-3语言编译器中间结构的设计方案
表l中的唯一节点指整个森林第一层链表中的节点;叶节点指链表中一棵三叉树的叶节点。
2.2 语句操作符
语句操作符分为分支选择操作符、循环操作符、跳出、返回、调用和无条件跳转等。各节点属性如表2所列。
表2中的根节点指森林中一棵三叉树的根节点;中间节点指某三叉树中的中间节点,它既非根节点,也非叶节点。CH00SE的左子节点是条件判定,中子节点是条件为真的内容,右子节点是条件为假的内容。同样,LOOP的左子节点是条件判定,中子节点是循环体,右子节点是循环计数。对于WHILE语句,右子节点可以为空。RETURN的左子节点是返回表达式子树。CALL的左子节点是参数子树,中子节点是调用子树。
2.3 表达式操作符
表达式操作符包括所有的高级语言运算符,如赋值、算术、关系、逻辑运算符等,以赋值、取地址和加法运算符为例,其表达式操作符号主要属性如表3所列。
评论