一種新的IEC31131-3語(yǔ)言編譯器中間結(jié)構(gòu)的設(shè)計(jì)方案
表l中的唯一節(jié)點(diǎn)指整個(gè)森林第一層鏈表中的節(jié)點(diǎn);葉節(jié)點(diǎn)指鏈表中一棵三叉樹(shù)的葉節(jié)點(diǎn)。
2.2 語(yǔ)句操作符
語(yǔ)句操作符分為分支選擇操作符、循環(huán)操作符、跳出、返回、調(diào)用和無(wú)條件跳轉(zhuǎn)等。各節(jié)點(diǎn)屬性如表2所列。
表2中的根節(jié)點(diǎn)指森林中一棵三叉樹(shù)的根節(jié)點(diǎn);中間節(jié)點(diǎn)指某三叉樹(shù)中的中間節(jié)點(diǎn),它既非根節(jié)點(diǎn),也非葉節(jié)點(diǎn)。CH00SE的左子節(jié)點(diǎn)是條件判定,中子節(jié)點(diǎn)是條件為真的內(nèi)容,右子節(jié)點(diǎn)是條件為假的內(nèi)容。同樣,LOOP的左子節(jié)點(diǎn)是條件判定,中子節(jié)點(diǎn)是循環(huán)體,右子節(jié)點(diǎn)是循環(huán)計(jì)數(shù)。對(duì)于WHILE語(yǔ)句,右子節(jié)點(diǎn)可以為空。RETURN的左子節(jié)點(diǎn)是返回表達(dá)式子樹(shù)。CALL的左子節(jié)點(diǎn)是參數(shù)子樹(shù),中子節(jié)點(diǎn)是調(diào)用子樹(shù)。
2.3 表達(dá)式操作符
表達(dá)式操作符包括所有的高級(jí)語(yǔ)言運(yùn)算符,如賦值、算術(shù)、關(guān)系、邏輯運(yùn)算符等,以賦值、取地址和加法運(yùn)算符為例,其表達(dá)式操作符號(hào)主要屬性如表3所列。
評(píng)論