AB_PLC中文完整指令集_第1頁
AB_PLC中文完整指令集_第2頁
AB_PLC中文完整指令集_第3頁
AB_PLC中文完整指令集_第4頁
AB_PLC中文完整指令集_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、AB PLC指令集目 錄一、位指令31.檢查是否閉合指令(XIC)32.檢查是否斷開指令(XIO)33.輸出激勵指令(OTE)34.輸出鎖存指令(OTL)35.輸出解鎖存指令(OUT)46.一次響應(yīng)指令(ONS)47.上升沿觸發(fā)指令(OSR)48.下降沿觸發(fā)指令(OSF)4二、計時器和計數(shù)器指令51.延時導(dǎo)通計時器指令(TON)52.延時斷開計時器指令(TOF)63.保持型計時器RTO74.加計數(shù)指令(CTU)75.減計數(shù)指令(CTD)86.復(fù)位指令(RES)9三、比較指令101.比較指令(CMP)102.等于指令(EQU)113.大于或等于指令(GEQ)124.大于指令(GRT)125.小于

2、或等于指令(LEQ)126.小于指令(LES)137.極限比較指令(LIM)138.屏蔽等于指令(MEQ)149.不等于指令(NEQ)15四、計算/算術(shù)指令151 計算指令(CPT)152 加法指令(ADD)173 減法指令(SUB)174 乘法指令(MUL)185除法指令(DIV)186 平方根指令(SQR)197 取反指令(NEG)20五、傳送/邏輯指令201. 傳送指令(MOV)202. 屏蔽傳送指令(MVM)213. 位域分配(BTD)224. 清零指令(CLR)235. 按位與指令(AND)236. 按位或指令(OR)247. 按位異或指令(XOR)258. 按位非指令(NOT)26

3、AB PLC指令集一、位指令1.檢查是否閉合指令(XIC) XIC屬輸入指令,若相應(yīng)位地址中是1(ON),則表示該指令的邏輯為真(true). 它類似于常開開關(guān),如果位地址使用了輸入映象表的位,則其狀態(tài)必須與相應(yīng)地址實(shí)際輸入設(shè)備的狀態(tài)相一致.XIC的指令形式如右圖. 在該指令中,若發(fā)現(xiàn)數(shù)據(jù)表中Local:1:I.Date.0是ON狀態(tài)(數(shù)據(jù)為1),則指令為真. Local:1:I.Date.0與本地機(jī)架1號槽的數(shù)據(jù)第0位對應(yīng),若輸入電路為真,則指令為真. 2.檢查是否斷開指令(XIO) XIO屬輸入指令,若相應(yīng)位地址的數(shù)據(jù)是1(ON),則表示該指令的邏輯為假(false),否則該指令的邏輯為真

4、(true ),它類似于一常閉開關(guān).XIO 的形式如右圖. 在該指令中,若發(fā)現(xiàn)數(shù)據(jù)表中Local:1:I.Date.0是OFF(數(shù)據(jù)為0)則指令為真. Local:1:I.Date.0與本地機(jī)架1號槽的數(shù)據(jù)第0位對應(yīng),若輸入電路為假則指令為真.3.輸出激勵指令(OTE) OTE屬輸出指令,用于控制存貯器中的位.若該位對應(yīng)輸出模塊上的一個端子,則當(dāng)該指令使能時,連接到該端子上的設(shè)備被接通,反之,設(shè)備不動作.若OTE指令前面的階梯條件為真,則處理器使能OTE指令.一條OTE指令如同一個繼電器的線圈.OTE指令由它前面的輸入指令控制,而繼電器的線圈由硬觸點(diǎn)控制.OTE的形式如右圖. 在該指令中,若階

5、梯條件為真,則該指令使處理器把輸出映象表中的Local:2:O.Date.0置為ON狀態(tài)(數(shù)值為1);若階梯條件為假,則置為OFF狀態(tài)(數(shù)值為0).地址Local:2:O.Date.0與本地機(jī)架2槽的數(shù)據(jù)第0位對應(yīng)4.輸出鎖存指令(OTL) OTL屬輸出指令,并且是保持型指令,也就是說,當(dāng)階梯條件是真時,OTL指令使處理器置位某一地址位,然后該位保持置位.此后即使階梯條件變假,該位依然保持置位;若要復(fù)位,則需要在另一階梯中使用解鎖指令OUT對同一地址的位解鎖.OTL的形式如右圖. 在該指令中,若階梯條件為真,則使處理器把輸出映象表中的Local:2:O.Date.0置位,直至用OUT對其解鎖.

6、5.輸出解鎖存指令(OUT) OUT常用以復(fù)位由OTL指令鎖存的位.當(dāng)階梯條件為真時,對相應(yīng)的位復(fù)位.以后即使階梯條件變假,該位依然保持復(fù)位(置0),除非采用另一指令對該位重新置位.OTU的形式如右圖.其含義與OTL對應(yīng).6.一次響應(yīng)指令(ONS) ONS屬輸入指令,如果指令被使能時存儲位清零,則ONS指令使能梯級的其余部分,如果被禁止或存儲位置位,ONS指令禁止梯級的其余部分. 在掃描時,如果limit_switch_1是清零狀態(tài)或storage_1是置位狀態(tài),則不影響階梯.如果當(dāng)掃描limit_switch_1是置位狀態(tài)且storage_1是清零狀態(tài).則ONS指令置位storage_1 1

7、且ADD指令的和數(shù)值就保持不變,必須在limit_switch_1再次從清零變?yōu)橹梦?和的值才增加.7.上升沿觸發(fā)指令(OSR) OSR是一條輸出指令,OSR指令根據(jù)存儲位的狀態(tài)置位或清零輸出位.如果指令被使能時存儲位清零,則OSR指令置位輸出位.如果使能時存儲位置位或禁止,則OSR指令清零輸出位.每次limit_switch_1從清零狀態(tài)變?yōu)橹梦粫r,OSR指令置位output_bit_1并且ADD指令的和加5.只要limit_switch_1保持置位,和的值就不變.必須在limit_switch_1再次從清零變?yōu)橹梦?和的值才再增加.用戶可以在多個梯級使用output_bit_1觸發(fā)其他操作

8、.8.下降沿觸發(fā)指令(OSF) OSF指令是一條輸出指令,OSF指令根據(jù)存儲位的狀態(tài)置位或清零輸出位.當(dāng)指令被禁止時存儲位置位,OSF指令置位輸出位.如果指令禁止或使能時存儲位是清零狀態(tài),則OSF指令清零輸出位.每次limit_switch_1從置位狀態(tài)變?yōu)榍辶銜r,OSF指令置位output_bit_1并且ADD指令的和加5.只要limit_switch_1保持清零,和的值就不變.必須在limit_switch_1再次從置位變?yōu)榍辶?和的值才再增加.用戶可以在多個梯級使用output_bit_1觸發(fā)其他操作.二、計時器和計數(shù)器指令1.延時導(dǎo)通計時器指令(TON) 利用TON指令在預(yù)置時間內(nèi)計時

9、完成去控制輸出的接通或斷開.當(dāng)階梯為真時,TON指令開始累加計時,直至下列條件之一發(fā)生為止: 累加值等于預(yù)置值. 階梯變假. 復(fù)位計時器. 相關(guān)的SFC步變無效. 一旦階梯條件變假,不論計時器是否到時,處理器都復(fù)位累加值. 可見每一個TON必須使用一個計時器元素(如 ),并提供下列參數(shù): (1) 預(yù)置值(Present):用以設(shè)置預(yù)定時間,以一個16位的整數(shù)值放置,范圍032767. (2) 累加值(Accum):是一個動態(tài)值,告訴用戶目前已經(jīng)延時的數(shù)值,計時器復(fù)位時,其值為 0. TON的操作及其相應(yīng)的狀態(tài)可用下表描述.階梯條件 EN(有效位) TT(計時位) DN(完成位) 說明 假 0

10、00不計時 真110正在計時,累積值<預(yù)置值 真101累積值>=預(yù)置值,計時完成 用復(fù)位指令RES000ACC=0,PRE不變,計時器復(fù)位 TON指令舉例當(dāng) limit_switch_1被置位時,light_2接通180毫秒(timer_1計時).當(dāng)timer_1的累加值.ACC達(dá)到180時, light_3接通.而且保持導(dǎo)通直到TON指令被禁止.如果在timer_1正計時時limit_switch_1斷開,則關(guān)斷l(xiāng)ight_2.2.延時斷開計時器指令(TOF) TOF指令在階梯條件變假時開始累加計時直至下列條件之一產(chǎn)生: 累加值等于預(yù)置值. 階梯條件變?yōu)檎?相關(guān)的SFC步變無效.

11、 一旦階梯條件變真,不論計時器是否到時,處理器都復(fù)位累加值. 各參數(shù)的含義與TON相同.TOF的操作及其相應(yīng)的狀態(tài)可用下表描述.一旦階梯條件變真,不論計時器是否到時,處理器都復(fù)位累加值. 各參數(shù)的含義與TON相同.TOF的操作及其相應(yīng)的狀態(tài)可用下表描述.階梯條件 EN(有效位) TT(計時位) DN(完成位) 說明 真101計時器不計時,ACC=0,計時器復(fù)位 假011正在計時,累積值<預(yù)置值 假000累積值=預(yù)置值,計時完成 由于RES指令將對正在計時的計時器累加值,完成位和計時位進(jìn)行復(fù)位,所以不可用RES復(fù)位指令復(fù)位TOF. TOF指令舉例當(dāng) limit_switch_2被清零時,l

12、ight_2接通180毫秒(timer_2計時).當(dāng)timer_2的累加值.ACC達(dá)到180時, light_2斷開同時light_3接通.而且保持導(dǎo)通直到TOF指令被使能.如果在timer_2 正計時時limit_switch_2被置位,則關(guān)斷l(xiāng)ight_2.3.保持型計時器RTORTO指令在階梯條件為真,開始計時,直到累加值達(dá)到預(yù)置值為止。 下列條件發(fā)生時,RTO指令保持其累加值: 階梯變假。 用戶改變到編程方式。 處理器出錯或斷電。相關(guān)的SFC步變無效。 當(dāng)處理器重新運(yùn)行或階梯變真時,計時器從保持的值開始續(xù)計時。由于保持累加值,所以在階梯為真的時間內(nèi)保持型計時器測量了累加時間。如果RTO

13、階梯條件變假后,要復(fù)位其累加值和狀態(tài)位,用戶需在另一條階梯中編寫具有相同地址的復(fù)位指令RES。RTO指令舉例:當(dāng) limit_switch_1被置位時,light_1接通180毫秒(timer_3計時).當(dāng)timer_3的累加值.ACC達(dá)到180時, light_1斷開同時light_2接通.而且light_2保持導(dǎo)通直到timer_3被復(fù)位。如果在timer_3正計時時limit_switch_2被清零,則light_1保持導(dǎo)通。當(dāng)limit_switch_2被復(fù)位時,RES指令復(fù)位timer_3(清零狀態(tài)位和.ACC)。4.加計數(shù)指令(CTU) CTU指令是一條輸出指令。操作數(shù):操作數(shù) 數(shù)

14、據(jù)類型 格式 說明 計數(shù)器 COUNTER 標(biāo)簽 計數(shù)器結(jié)構(gòu) 預(yù)置值 DINT 立即數(shù) 計數(shù)次數(shù) 累加值 DINT 立即數(shù) 計數(shù)器已經(jīng)計數(shù)的次數(shù),一般初始值為0 計數(shù)器結(jié)構(gòu):助記符 數(shù)據(jù)類型 說明 .CU BOOL 加計數(shù)使能位標(biāo)識CTU指令被使能 .DN BOOL 完成位標(biāo)識累加值(.ACC)>=(預(yù)置值.PRE) .OV BOOL 益出位標(biāo)識計數(shù)器超過上限值2147483647。然后計數(shù)器返回到-2147483648。并再開始加計數(shù) .PRE DINT 預(yù)置值指定在指令置位完成位(.DN)之前累加值所達(dá)到的值 .ACC DINT 累加值表示指令已經(jīng)計數(shù)的梯級轉(zhuǎn)換的次數(shù)。 說明:CTU

15、指令向上計數(shù)。 如果指令被使能時加計數(shù)使能位(.CU)是清零狀態(tài),則CTU指令使計數(shù)器加1。如果指令被使能位(.CU)是置位狀態(tài),或指令被禁止,CTU指令保持它的累加值(.ACC)。 即使完成位(.DN)被置位之后,累加值也繼續(xù)增加。如果要清零累加值,可以用一條引用同一計數(shù)器結(jié)構(gòu)的RES指令,或?qū)?值到計數(shù)器的累加值。CTU指令舉例:limit_switch_1由禁止變?yōu)槭鼓?0次之后,完成位.DN被置位。并且接通light_1。如果limit_switch_1繼續(xù)由禁止變?yōu)槭鼓?,則計數(shù)器counter_1繼續(xù)增加它的計數(shù)值,且完成位.DN保持置位狀態(tài)。當(dāng)limit_switch_2被使能時,

16、RES指令復(fù)位counter_1(清零狀態(tài)位和.ACC值)并且關(guān)斷l(xiāng)ight_1。5.減計數(shù)指令(CTD) CTD指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 計數(shù)器 COUNTER 標(biāo)簽 計數(shù)器結(jié)構(gòu) 預(yù)置值 DINT 立即數(shù) 計數(shù)次數(shù) 累加值 DINT 立即數(shù) 計數(shù)器已經(jīng)計數(shù)的次數(shù),一般初始值為0 計數(shù)器結(jié)構(gòu):助記符 數(shù)據(jù)類型 說明 .CD BOOL 減計數(shù)使能位標(biāo)識CTD指令被使能 .DN BOOL 完成位標(biāo)識累加值(.ACC)(預(yù)置值.PRE) .UN BOOL 下出位標(biāo)識計數(shù)器超過下限值-2147483648。然后計數(shù)器返回到2147483647。在開始減計數(shù) .PRE

17、DINT 預(yù)置值指定在指令置位完成位(.DN)之前累加值所達(dá)到的值 .ACC DINT 累加值表示指令已經(jīng)計數(shù)的梯級轉(zhuǎn)換的次數(shù)。 說明:CTD指令向下計數(shù)。 如果指令被使能時減計數(shù)使能位(.CD)是清零狀態(tài),則CTD指令使計數(shù)值減1。如果指令被使能時減計數(shù)位(.CU)置位,或指令被禁止,則CTD指令保持它的累加值(.ACC)。 即使完成位(.DN)被置位之后,累加值也繼續(xù)減少。如果要清零累加值,可以用一條引用同一計數(shù)器結(jié)構(gòu)的RES指令,或?qū)?值到計數(shù)器的累加值。CTD指令舉例:傳送裝置把零件帶到緩存區(qū)。每進(jìn)入一個零件,limit_switch_1被使能且counter_1的累加值加1。每取出一

18、個零件limit_switch_被使能且counter_1的累加值減1。如果有100個零件進(jìn)入緩存區(qū)(置位counter_1的完成位.DN),則關(guān)斷傳送裝置A,在緩存區(qū)有空間之前,不用傳送零件進(jìn)入緩存區(qū)。 6.復(fù)位指令(RES) RES指令是一條輸出指令。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 結(jié)構(gòu) TIMER CONTROL COUNTER 標(biāo)簽 復(fù)位的結(jié)構(gòu) 三、比較指令 1.比較指令(CMP) CMP是一條輸入指令。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 表達(dá)式 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 表達(dá)式由被運(yùn)算符分隔的標(biāo)簽與/或立即數(shù)組成 說明:CMP指令執(zhí)行表達(dá)式中指定的算

19、術(shù)運(yùn)算比較。用戶要執(zhí)行的運(yùn)算由表達(dá)式定義。用運(yùn)算符,標(biāo)簽和立即數(shù)定義表達(dá)式。表達(dá)式中的復(fù)雜部分用圓括號()定義。 有效運(yùn)算符運(yùn)算符 說明 最優(yōu)數(shù)據(jù)類型 + 加 DINT,REAL - 減/非 DINT,REAL * 乘 DINT,REAL / 除 DINT,REAL = 等于 DINT,REAL < 小于 DINT,REAL <= 小于或等于 DINT,REAL > 大于 DINT,REAL >= 大于或等于 DINT,REAL <> 不等于 DINT,REAL * 指數(shù) DINT,REAL ACS 反余弦 REAL AND 按位與 DINT ASN 反正弦

20、 REAL ATN 反正切 REAL COS 余弦 REAL DEG 弧度轉(zhuǎn)換成角度 DINT,REAL FRD BCD碼轉(zhuǎn)換成整數(shù) DINT LN 自然對數(shù) REAL LOG 以10為底的對數(shù) REAL NOT 位補(bǔ)碼 DINT OR 按位OR DINT RAD 角度轉(zhuǎn)換成弧度 DINT,REAL SIN 正弦 REAL SQR 平方根 DINT,REAL TAN 正切 REAL TOD 整數(shù)轉(zhuǎn)換成BCD DINT XOR 按位異或 DINT 確定運(yùn)算順序 指令按預(yù)先規(guī)定的順序,而不必按用戶列出的順序,執(zhí)行寫入表達(dá)式的運(yùn)算。可以通過把分組項(xiàng)組合到圓括號內(nèi)來改變運(yùn)算順序,強(qiáng)制指令在執(zhí)行其他運(yùn)算

21、之前執(zhí)行圓括號內(nèi)的運(yùn)算,來改變運(yùn)算順序。同級運(yùn)算順序從左向右執(zhí)行。順序 運(yùn)算符 1 ACS,ASN,ATN,COS,DEG,F(xiàn)RD,LN,LOG,RAD,SIN,SQR,TAN,TOD 2 * 3 -(取反),NOT 4 *,/ 5 <,<=,>,>=,= 6 -(減),+ 7 AND 8 XOR 9 OR 與專用比較指令相比,執(zhí)行一條CMP指令速度稍慢而且占用更多的內(nèi)存。CMP指令的優(yōu)點(diǎn)是用戶可以在一條指令內(nèi)寫入復(fù)雜的表達(dá)式。如果CMP指令判斷表達(dá)式為真,則梯級輸出條件被設(shè)置為真。如果輸入一個沒有比較運(yùn)算符的表達(dá)時,例如,Ivalue_1+ value_2,則指令計算

22、表達(dá)式的數(shù)值:如果表達(dá)式的值是 梯級輸出條件被設(shè)置為 非零值 真 零值 假 2.等于指令(EQU) EQU指令是一條輸入指令。 如果 value_1與value_2相等,則梯級輸出條件被設(shè)置為真。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源B比較的數(shù)值 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源A比較的數(shù)值 說明:EQU指令測試源A的值與源B的值是否相等。REAL數(shù)據(jù)類型的數(shù)值很少絕對相等。如果必須確定兩個REAL值是否相等,可以使用LIM指令。3.大于或等于指令(GEQ) GEQ指令是一條輸入指令。 如果 value

23、_1大于或等于value_2,則梯級輸出條件被設(shè)置為真。操作數(shù)操作數(shù) 數(shù)據(jù)類型 格式 說明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源B比較的數(shù)值 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源A比較的數(shù)值 說明:GEQ指令測試源A的值是否大于或等于源B的值。4.大于指令(GRT) GRT指令是一條輸入指令。 如果 value_1大于value_2,則梯級輸出條件被設(shè)置為真。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源B比較的數(shù)值 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源A比較的數(shù)

24、值 說明:GRT指令測試源A的值是否大于源B的值。5.小于或等于指令(LEQ) GEQ指令是一條輸入指令。 如果 value_1小于或等于value_2,則梯級輸出條件被設(shè)置為真。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源B比較的數(shù)值 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源A比較的數(shù)值 6.小于指令(LES) LES指令是一條輸入指令。 如果 value_小大于value_2,則梯級輸出條件被設(shè)置為真。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源B比較的數(shù)值

25、 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源A比較的數(shù)值 說明:LES指令測試源A的值是否小于源B的值。7.極限比較指令(LIM) LIM指令是一條輸入指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 下限 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 下限值 源B測試 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 測試值 上限 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 上限值 說明:LIM指令比較測試值是否在下限和上限范圍內(nèi)。LIM指令舉例: 例1LowLimit<=HighLimit: 當(dāng)0<=value<=100時,接通light_

26、1.例2LowLimit>=HighLimit: 當(dāng)value>=0或value<=-100時,接通light_1.8.屏蔽等于指令(MEQ) MEQ指令是一條輸入指令。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源 SINT INT DINT 立即數(shù) 標(biāo)簽 與比較值比較的數(shù)值 屏蔽 SINT INT DINT 立即數(shù) 標(biāo)簽 阻止或通過的位 比較 SINT INT DINT 立即數(shù) 標(biāo)簽 與源值比較的數(shù)值 說明:MEQ指令比較通過屏蔽的源值和比較值的結(jié)果。MEQ指令舉例: 例1:Value_1 :0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 Mask_1:1 1

27、1 1 1 1 1 1 1 1 1 1 0 0 0 0 通過屏蔽的value_1:0 1 0 1 0 1 0 1 1 1 1 1 * * * * Value_2 :0 1 0 1 0 1 0 1 1 1 1 1 0 0 0 0 Mask_1:1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 通過屏蔽的value_2:0 1 0 1 0 1 0 1 1 1 1 1 * * * * 9.不等于指令(NEQ) NEQ指令是一條輸入指令。 如果 value_1不等于value_2,則梯級輸出條件被設(shè)置為真。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源A SINT INT DINT REAL

28、立即數(shù) 標(biāo)簽 與源B比較的數(shù)值 說明:NEQ指令測試源A的值與源B的值是否相等。四、計算/算術(shù)指令1 計算指令(CPT)CPT指令是一條輸出指令。操作數(shù):操作數(shù): 數(shù)據(jù)類型: 格式: 說明: 目的單元 SINT INT DINT REAL 標(biāo)簽 存儲結(jié)果的標(biāo)簽表達(dá)式 SINT lNT DINT REAL 立即數(shù) 標(biāo)簽 表達(dá)式由運(yùn)算符分開的標(biāo)簽/立即數(shù)組成。說明:CPT指令執(zhí)行表達(dá)式中定義的算術(shù)運(yùn)算。當(dāng)指令被使能時CPT指令計算表達(dá)式的數(shù)值并且存放結(jié)果于目的單元內(nèi)。與其它算術(shù)指令運(yùn)算相比CPT指令的運(yùn)算速度稍慢而 且占用更多的內(nèi)存。CPT指令的優(yōu)點(diǎn)是它允許用戶在一條指令內(nèi)輸入復(fù)雜的表達(dá)式。 有效

29、運(yùn)算符:運(yùn)算符: 說明: 最優(yōu)數(shù)據(jù)類型: + 加 D INT, REAL - 減/非 D INT, REAL * 乘 D INT, REAL / 除 D INT, REAL * 指數(shù)(xtoy) D INT, REAL ACS 反余弦 REAL AND 按位與 DINT ASN 反正弦 REAL ATN 反正切 REAL COS 余弦 REAL DEG 弧度轉(zhuǎn)換成角度 D INT, REAL FRD BCD碼轉(zhuǎn)換成整數(shù) DINT LN 自然對數(shù) REAL LOG 以10為底的對數(shù) REAL NOT 位補(bǔ)碼 DINT OR 按位OR DINT RAD 角度轉(zhuǎn)換成弧度 D INT, REAL SI

30、N 正弦 REAL SQR 平方根 D INT, REAL TAN 正切 REAL TOD 整數(shù)轉(zhuǎn)換成BCD DINT XOR 按位異或 DINT 確定運(yùn)算順序 指令按預(yù)先規(guī)定的順序而不必按用戶列出的順序執(zhí)行寫入表達(dá)式的運(yùn)算。可以通過把分組項(xiàng)組合到圓括號內(nèi)來改變運(yùn)算順序強(qiáng)制指令在執(zhí)行其他運(yùn)算之前執(zhí)行圓括號內(nèi)的運(yùn)算來改變運(yùn)算順序。同級的運(yùn)算順序是從左向右執(zhí)行。順序: 運(yùn)算符: 1 ACS,ASN,ATN,COS,DEG,F(xiàn)RD,LN,LOG,RAD,S IN, SQR, TAN TOD 2 * 3 -(取反)NOT 4 *,/ 5 -(減)+ 6 AND 7 XOR 8 OR 執(zhí)行:條件: 動作

31、: 預(yù)掃描 梯級輸出條件被設(shè)置為假。 梯級輸入條件為假 梯級輸出條件被設(shè)置為假。 梯級輸入條件為真 指令計算表達(dá)式并存放結(jié)果于目的單元梯級輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無CPT指令舉例: 當(dāng)指令被使能時CPT指令計算value_1乘以5的結(jié)果,然后此結(jié)果被value_2除以7的結(jié)果除并把最后結(jié)果存放在result_1內(nèi). 2 加法指令(ADD) ADD指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源B操作數(shù)相加的值。 說明:ADD指令使源A操作數(shù)與源B操作數(shù)相加并存放計算結(jié)果于目的單

32、元內(nèi)。 執(zhí)行:條件: 動作: 預(yù)掃描 梯級輸出條件被設(shè)置為假。 梯級輸入條件為假 梯級輸出條件被設(shè)置為假。 梯級輸入條件為真 目的單元=源A+源B,梯級輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無 ADD指令舉例: 當(dāng)指令使能時ADD指令使float_value_1與float_value_2相加并存放結(jié)果于add _result內(nèi)。3 減法指令(SUB) SUB指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 減去源B操作數(shù)相加的值。 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 從源A

33、操作數(shù)減去的值 目的單元 SINT INT DINT REAL 標(biāo)簽 存放計算結(jié)果的標(biāo)簽。 說明:SUB指令使源A操作數(shù)減去源B操作數(shù)并存放結(jié)果于目的單元內(nèi)。執(zhí)行:條件: 動作: 預(yù)掃描 梯級輸出條件被設(shè)置為假。 梯級輸入條件為假 梯級輸出條件被設(shè)置為假。 梯級輸入條件為真 目的單元=源A一源B梯級輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無 SUB指令舉例: 當(dāng)指令使能時SUB指令使float _value_1減去float_ value_2并存放結(jié)果于subtract_result內(nèi)。4 乘法指令(MUL) MUL指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格

34、式 說明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 被乘數(shù) 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 乘數(shù) 目的單元 SINT INT DINT REAL 標(biāo)簽 存放計算結(jié)果的標(biāo)簽。 說明:MUL指令使源A操作數(shù)與源B操作數(shù)相乘并存放計算結(jié)果于目的單元。執(zhí)行:條件: 動作: 預(yù)掃描 梯級輸出條件被設(shè)置為假。 梯級輸入條件為假 梯級輸出條件被設(shè)置為假。 梯級輸入條件為真 目的單元=源A*源B,梯級輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無MUL指令舉例: 當(dāng)指令使能時MUL指令使float_value_1與float_value_2相乘

35、并存放結(jié)果于multjply_result內(nèi)。5除法指令(DIV) DIV指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 被除數(shù)值。 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 除數(shù)值。 說明:DIV指令使源A操作數(shù)被源B操作數(shù)除并存放結(jié)果于目的單元。 執(zhí)行:條件: 動作: 預(yù)掃描 梯級輸出條件被設(shè)置為假。 梯級輸入條件為假 梯級輸出條件被設(shè)置為假。 梯級輸入條件為真 目的單元=源A/源B, 梯級輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無 DIV指令舉例: 當(dāng)指令使能時DIV指令使f

36、loat_value_1被float_value_2除并存放結(jié)果于divide_result內(nèi)。6 平方根指令(SQR) SQR指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 計算該值的平方根。 目的單元 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 存放計算結(jié)果的標(biāo)簽。 說明: SQR指令計算源操作數(shù)的平方根并存放計算結(jié)果于目的單元內(nèi)。如果源操作數(shù)是負(fù)數(shù)則指令在計算源操作數(shù)的平方根之前先計算其絕對值。 執(zhí)行:條件: 動作: 預(yù)掃描 梯級輸出條件被設(shè)置為假。 梯級輸入條件為假 梯級輸出條件被設(shè)置為假。 梯級輸入條件為真

37、目的單元=梯級輸出條件被設(shè)置為真。Destination=(Soure)1/2 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無 SQR指令舉例: 當(dāng)指令被使能時SQR指令計算value_1的平方根并存放計算結(jié)果于sqr_result內(nèi)。7 取反指令(NEG) NEG指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 要取反的數(shù)值。 目的 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 存放計算結(jié)果的標(biāo)簽。 說明: NEG指令改變源操作數(shù)的符號并存放結(jié)果于目的單元。如果對一個負(fù)數(shù)取反則結(jié)果是正數(shù)。如果對正數(shù)取反則結(jié)果是負(fù)數(shù)。執(zhí)

38、行:條件: 動作: 預(yù)掃描 梯級輸出條件被設(shè)置為假。 梯級輸入條件為假 梯級輸出條件被設(shè)置為假。 梯級輸入條件為真 目的單元=0一源操作數(shù),梯級輸出條件被設(shè)置為真。 五、傳送/邏輯指令1. 傳送指令(MOV) MOV指令是一條輸出指令。操作數(shù): 操作數(shù) 數(shù)據(jù)類型 格式 說明 源 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 被傳送(復(fù)制)的數(shù)值 目的單元 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 存放計算結(jié)果的標(biāo)簽。 說明: MOV指令復(fù)制源操作數(shù)到目的單元。源操作數(shù)保持不變。執(zhí)行:條件: 動作: 預(yù)掃描 梯級輸出條件被設(shè)置為假。 梯級輸入條件為假 梯級輸出條件被設(shè)置為假。 梯

39、級輸入條件為真 指令復(fù)制源操作數(shù)到目的單元。梯級輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 不影響 故障條件: 無 MOV指令舉例: 當(dāng)指令被使能時,MOV指令復(fù)制在value_1內(nèi)的數(shù)據(jù)到value_2.2. 屏蔽傳送指令(MVM) MVM指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源 SINT INT DINT 立即數(shù) 標(biāo)簽 被傳送的值 屏蔽 SINT INT DINT 立即數(shù) 標(biāo)簽 阻止或通過的位。 目的單元 SINT INT DINT 標(biāo)簽 存放結(jié)果的標(biāo)簽。 說明: MVM指令復(fù)制源操作數(shù)數(shù)值到目的單元并且允許部分?jǐn)?shù)據(jù)被屏蔽。源操作數(shù)保持不變。當(dāng)指令被使能時MVM指令通過屏蔽

40、傳送或阻止源數(shù)據(jù)位。屏蔽位的一個1值意味著位數(shù)據(jù)可以通過。屏蔽位的一個O值意味著位數(shù)據(jù)被阻止。如果用混合整型數(shù)據(jù)類型則指令用O值來填充小整數(shù)數(shù)據(jù)類型的高位以使它們與最大整型數(shù)據(jù)類型的大小相同。輸入立即數(shù)作為屏蔽值當(dāng)輸入立即數(shù)作為屏蔽值時編程軟件默認(rèn)為是十進(jìn)制數(shù)值。如果要輸入一個其它格式的屏蔽值可以在數(shù)值之前加相應(yīng)的前綴如下表所示:前綴: 說明: 16# 十六進(jìn)制例如:16#OFOF 8# 八進(jìn)制,例如:8#16 2# 二進(jìn)制,例如:2#00110011 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志故障條件: 無 MVM指令舉例:當(dāng)指令被使能時MVM指令從value_1復(fù)制數(shù)據(jù)到value_2同時允許數(shù)據(jù)被

41、屏蔽(屏蔽操作數(shù)內(nèi)各位的一個0值屏蔽在value_1內(nèi)的位數(shù)據(jù))。陰影部分表示value_2內(nèi)的數(shù)值被改變。3. 位域分配(BTD) BTD指令是一條輸出指令。 操作數(shù):操作數(shù): 數(shù)據(jù)類型: 格式:說明: 源 SINT INT D INT 立即數(shù) 標(biāo)簽 包含要傳送數(shù)據(jù)位的標(biāo)簽。 源位 D INT立即數(shù)(0一31 DINT) (0一15 INT)(0一7 SINT) 開始傳送位的位置號(低位號) 必須在源數(shù)據(jù)類型的有效范圍內(nèi)。 目的 SINT INT D INT標(biāo)簽傳送位的目的單元標(biāo)簽。 目的位 D INT立即數(shù)從源操作數(shù)復(fù)制的位在目的單元的起始位號(低位號)必須在目的操作數(shù)數(shù)據(jù)類型的有效范圍內(nèi)

42、。 長度 D INT立即數(shù)(1一32) 被傳送的位的數(shù)量。 說明: BTD指令復(fù)制源操作數(shù)的指定位并傳送這些位到適當(dāng)?shù)奈恢貌堰@些位寫到目的元內(nèi)。目的單元內(nèi)的其余部分保持不變。當(dāng)指令被使能時B丁O指令復(fù)制來自源操作數(shù)的位組到目的單元內(nèi)。該位組由源位(位組的低位位號)和長度(要復(fù)制的位的數(shù)量)確定。目的位確定目的單元內(nèi)開始的低位號。源操作數(shù)保持不變。如果位字段擴(kuò)展的長度超過目的單元的邊界則指令不保存超出的位。超出的位也不與下個字重疊。如果用混合整數(shù)數(shù)據(jù)類型則指令用O值來填充小整數(shù)數(shù)據(jù)類型的高位以使它們與最大數(shù)據(jù)類型的大小相同。執(zhí)行:條件: 動作: 預(yù)掃描 梯級輸出條件被設(shè)置為假 梯級輸入條件為假

43、 梯級輸出條件被設(shè)置為假 梯級輸入條件為真 指令復(fù)制并且傳送源數(shù)據(jù)位到目的單元。 梯級輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無 BTD指令舉例: 例1當(dāng)指令被使能時指令傳送在value_1內(nèi)的位。Value_1執(zhí)行BTD指令之前 Value_1 執(zhí)行BTD指令之后4. 清零指令(CLR) CLR指令是一條輸出指令。 操作數(shù):操作數(shù): 數(shù)據(jù)類型: 格式: 說明: 目的 SINT INT DINT REAL 標(biāo)簽 被清零數(shù)據(jù)的標(biāo)識符 說明:CLR指令清零目的單元的所有位。執(zhí)行:條件: 動作: 預(yù)掃描: 梯級輸出條件被設(shè)置為假。 梯級輸入條件為假 梯級輸出條件被設(shè)置為假

44、。 梯級輸入條件為真 指令清零目的單元內(nèi)的數(shù)據(jù)。 梯級輸出被件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無 CLR指令舉例: 當(dāng)使能時CLR指令清零value_1內(nèi)的所有位。5. 按位與指令(AND) AND指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說明 源A SINT INT DINT 立即數(shù) 標(biāo)簽 與源B操作數(shù)進(jìn)行與運(yùn)算的 數(shù)值。 源B SINT INT DINT 立即數(shù) 標(biāo)簽 與源A操作數(shù)進(jìn)行與運(yùn)算的 數(shù)值。 目的單元 SINT INT DINT 標(biāo)簽 存放運(yùn)算結(jié)果的標(biāo)簽。 說明: AND指令執(zhí)行源A與源B操作數(shù)的按位與運(yùn)算并存放結(jié)果于目的單元。 當(dāng)指令被使能時執(zhí)行邏輯與運(yùn)算:如果源A的位: 源B的位: 目的單元的位是 0 0 0 0 1 0 1 0 0 1 1 1 如果用戶使用混合整型數(shù)據(jù)類型則指令用0值填充小整數(shù)數(shù)據(jù)的高位以使其與最大數(shù)據(jù)類型有相同的大小。執(zhí)行:條件: 動作: 預(yù)掃描 梯級輸出條件

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論