請問這幾段程序如何理解
劉玉蓉
發(fā)布于2014-08-18 17:54
72
0
標(biāo)簽:
請問這幾段程序如何理解
//1#LGJ
L PIW 756
T #temp
A L 1.0
= "EMS_DBX".LGJ_RunState_1
A L 1.1
= "EMS_DBX".LGJ_ErrState_1
A L 1.2
= "EMS_DBX".LGJ_SysState_1
A L 0.3
= "EMS_DBX".LGJ_RuningState_1
A L 0.4
= "EMS_DBX".LGJ_StopingState_1
//2#LGJ
L PIW 772
T #temp
A L 1.0
= "EMS_DBX".LGJ_RunState_2
A L 1.1
= "EMS_DBX".LGJ_ErrState_2
A L 1.2
= "EMS_DBX".LGJ_SysState_2
A L 0.3
= "EMS_DBX".LGJ_RuningState_2
A L 0.4
= "EMS_DBX".LGJ_StopingState_2
//3#LGJ
L PIW 788
T #temp
A L 1.0
= "EMS_DBX".LGJ_RunState_3
A L 1.1
= "EMS_DBX".LGJ_ErrState_3
A L 1.2
= "EMS_DBX".LGJ_SysState_3
A L 0.3
= "EMS_DBX".LGJ_RuningState_3
A L 0.4
= "EMS_DBX".LGJ_StopingState_3
2.還有這段程序如何理解
L P#0.0
LAR1
L 6
A: T LB 0
L PIW [AR1,P#306.0]
T MW [AR1,P#200.0]
L 16
+AR1
L LB 0
LOOP A
希望高人能指點
問題補充:
在請問一下,
L0.3、L 1.0、L1.1,L1.2這些具體是什么意思呢?這個不理解啊,能詳細(xì)說說嗎
佳答案
1、//1#LGJ
L PIW 756
T #temp//存入過程通道的 756單元中。
A L 1.0
= "EMS_DBX".LGJ_RunState_1//如果臨時變量 L1.0置位,則運行狀態(tài)置1
A L 1.1
= "EMS_DBX".LGJ_ErrState_1//如果臨時變量 L1.1置位,則錯誤狀態(tài)置1
A L 1.2
= "EMS_DBX".LGJ_SysState_1//如果臨時變量 L1.2置位,則系統(tǒng)狀態(tài)置1
A L 0.3
= "EMS_DBX".LGJ_RuningState_1//如果臨時變量 L0.3置位,則已運行狀態(tài)置1
A L 0.4
= "EMS_DBX".LGJ_StopingState_1//如果臨時變量 L0.4置位,則已停止?fàn)顟B(tài)置1
//2#LGJ
.........//注釋與1#LGJ相同
//3#LGJ
.........//注釋與1#LGJ相同
2.還有這段程序如何理解:
這是一段典型的應(yīng)用循環(huán)語句的程序,即利用地址指針循環(huán)變化,將PIW306,322,338,......共6個字分別存入MB200,216,232.......中。
L P#0.0
LAR1 //初始地址指針
L 6// 6個字的循環(huán)計數(shù)為初值
A: T LB 0//計數(shù)值 送入LB 0
L PIW [AR1,P#306.0] //按讀指針指示的地址讀數(shù)據(jù)
T MW [AR1,P#200.0]//按讀指針指示的地址寫數(shù)據(jù)
L 16//取常數(shù)16
+AR1 //尋找地址指針,即將當(dāng)前地址指針內(nèi)容加上16,
L LB 0 //取循環(huán)計數(shù)值
LOOP A //循環(huán)計數(shù)值如為0則結(jié)束循環(huán);如不為0減1后則轉(zhuǎn)向標(biāo)號為A的語句,繼續(xù)循環(huán)。