版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、AB PLC指令集目 錄一、位指令31.檢查是否閉合指令(XIC)32.檢查是否斷開指令(XIO)33.輸出激勵(lì)指令(OTE)34.輸出鎖存指令(OTL)35.輸出解鎖存指令(OUT)46.一次響應(yīng)指令(ONS)47.上升沿觸發(fā)指令(OSR)48.下降沿觸發(fā)指令(OSF)4二、計(jì)時(shí)器和計(jì)數(shù)器指令51.延時(shí)導(dǎo)通計(jì)時(shí)器指令(TON)52.延時(shí)斷開計(jì)時(shí)器指令(TOF)63.保持型計(jì)時(shí)器RTO74.加計(jì)數(shù)指令(CTU)75.減計(jì)數(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四、計(jì)算/算術(shù)指令151 計(jì)算指令(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號(hào)槽的數(shù)據(jù)第0位對(duì)應(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號(hào)槽的數(shù)據(jù)第0位對(duì)應(yīng),若輸入電路為假則指令為真.3.輸出激勵(lì)指令(OTE) OTE屬輸出指令,用于控制存貯器中的位.若該位對(duì)應(yīng)輸出模塊上的一個(gè)端子,則當(dāng)該指令使能時(shí),連接到該端子上的設(shè)備被接通,反之,設(shè)備不動(dòng)作.若OTE指令前面的階梯條件為真,則處理器使能OTE指令.一條OTE指令如同一個(gè)繼電器的線圈.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位對(duì)應(yīng)4.輸出鎖存指令(OTL) OTL屬輸出指令,并且是保持型指令,也就是說(shuō),當(dāng)階梯條件是真時(shí),OTL指令使處理器置位某一地址位,然后該位保持置位.此后即使階梯條件變假,該位依然保持置位;若要復(fù)位,則需要在另一階梯中使用解鎖指令OUT對(duì)同一地址的位解鎖.OTL的形式如右圖. 在該指令中,若階梯條件為真,則使處理器把輸出映象表中的Local:2:O.Date.0置位,直至用OUT對(duì)其解鎖.
6、5.輸出解鎖存指令(OUT) OUT常用以復(fù)位由OTL指令鎖存的位.當(dāng)階梯條件為真時(shí),對(duì)相應(yīng)的位復(fù)位.以后即使階梯條件變假,該位依然保持復(fù)位(置0),除非采用另一指令對(duì)該位重新置位.OTU的形式如右圖.其含義與OTL對(duì)應(yīng).6.一次響應(yīng)指令(ONS) ONS屬輸入指令,如果指令被使能時(shí)存儲(chǔ)位清零,則ONS指令使能梯級(jí)的其余部分,如果被禁止或存儲(chǔ)位置位,ONS指令禁止梯級(jí)的其余部分. 在掃描時(shí),如果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ù)存儲(chǔ)位的狀態(tài)置位或清零輸出位.如果指令被使能時(shí)存儲(chǔ)位清零,則OSR指令置位輸出位.如果使能時(shí)存儲(chǔ)位置位或禁止,則OSR指令清零輸出位.每次limit_switch_1從清零狀態(tài)變?yōu)橹梦粫r(shí),OSR指令置位output_bit_1并且ADD指令的和加5.只要limit_switch_1保持置位,和的值就不變.必須在limit_switch_1再次從清零變?yōu)橹梦?和的值才再增加.用戶可以在多個(gè)梯級(jí)使用output_bit_1觸發(fā)其他操作
8、.8.下降沿觸發(fā)指令(OSF) OSF指令是一條輸出指令,OSF指令根據(jù)存儲(chǔ)位的狀態(tài)置位或清零輸出位.當(dāng)指令被禁止時(shí)存儲(chǔ)位置位,OSF指令置位輸出位.如果指令禁止或使能時(shí)存儲(chǔ)位是清零狀態(tài),則OSF指令清零輸出位.每次limit_switch_1從置位狀態(tài)變?yōu)榍辶銜r(shí),OSF指令置位output_bit_1并且ADD指令的和加5.只要limit_switch_1保持清零,和的值就不變.必須在limit_switch_1再次從置位變?yōu)榍辶?和的值才再增加.用戶可以在多個(gè)梯級(jí)使用output_bit_1觸發(fā)其他操作.二、計(jì)時(shí)器和計(jì)數(shù)器指令1.延時(shí)導(dǎo)通計(jì)時(shí)器指令(TON) 利用TON指令在預(yù)置時(shí)間內(nèi)計(jì)時(shí)
9、完成去控制輸出的接通或斷開.當(dāng)階梯為真時(shí),TON指令開始累加計(jì)時(shí),直至下列條件之一發(fā)生為止: 累加值等于預(yù)置值. 階梯變假. 復(fù)位計(jì)時(shí)器. 相關(guān)的SFC步變無(wú)效. 一旦階梯條件變假,不論計(jì)時(shí)器是否到時(shí),處理器都復(fù)位累加值. 可見每一個(gè)TON必須使用一個(gè)計(jì)時(shí)器元素(如 ),并提供下列參數(shù): (1) 預(yù)置值(Present):用以設(shè)置預(yù)定時(shí)間,以一個(gè)16位的整數(shù)值放置,范圍032767. (2) 累加值(Accum):是一個(gè)動(dòng)態(tài)值,告訴用戶目前已經(jīng)延時(shí)的數(shù)值,計(jì)時(shí)器復(fù)位時(shí),其值為 0. TON的操作及其相應(yīng)的狀態(tài)可用下表描述.階梯條件 EN(有效位) TT(計(jì)時(shí)位) DN(完成位) 說(shuō)明 假 0
10、00不計(jì)時(shí) 真110正在計(jì)時(shí),累積值<預(yù)置值 真101累積值>=預(yù)置值,計(jì)時(shí)完成 用復(fù)位指令RES000ACC=0,PRE不變,計(jì)時(shí)器復(fù)位 TON指令舉例當(dāng) limit_switch_1被置位時(shí),light_2接通180毫秒(timer_1計(jì)時(shí)).當(dāng)timer_1的累加值.ACC達(dá)到180時(shí), light_3接通.而且保持導(dǎo)通直到TON指令被禁止.如果在timer_1正計(jì)時(shí)時(shí)limit_switch_1斷開,則關(guān)斷l(xiāng)ight_2.2.延時(shí)斷開計(jì)時(shí)器指令(TOF) TOF指令在階梯條件變假時(shí)開始累加計(jì)時(shí)直至下列條件之一產(chǎn)生: 累加值等于預(yù)置值. 階梯條件變?yōu)檎?相關(guān)的SFC步變無(wú)效.
11、 一旦階梯條件變真,不論計(jì)時(shí)器是否到時(shí),處理器都復(fù)位累加值. 各參數(shù)的含義與TON相同.TOF的操作及其相應(yīng)的狀態(tài)可用下表描述.一旦階梯條件變真,不論計(jì)時(shí)器是否到時(shí),處理器都復(fù)位累加值. 各參數(shù)的含義與TON相同.TOF的操作及其相應(yīng)的狀態(tài)可用下表描述.階梯條件 EN(有效位) TT(計(jì)時(shí)位) DN(完成位) 說(shuō)明 真101計(jì)時(shí)器不計(jì)時(shí),ACC=0,計(jì)時(shí)器復(fù)位 假011正在計(jì)時(shí),累積值<預(yù)置值 假000累積值=預(yù)置值,計(jì)時(shí)完成 由于RES指令將對(duì)正在計(jì)時(shí)的計(jì)時(shí)器累加值,完成位和計(jì)時(shí)位進(jìn)行復(fù)位,所以不可用RES復(fù)位指令復(fù)位TOF. TOF指令舉例當(dāng) limit_switch_2被清零時(shí),l
12、ight_2接通180毫秒(timer_2計(jì)時(shí)).當(dāng)timer_2的累加值.ACC達(dá)到180時(shí), light_2斷開同時(shí)light_3接通.而且保持導(dǎo)通直到TOF指令被使能.如果在timer_2 正計(jì)時(shí)時(shí)limit_switch_2被置位,則關(guān)斷l(xiāng)ight_2.3.保持型計(jì)時(shí)器RTORTO指令在階梯條件為真,開始計(jì)時(shí),直到累加值達(dá)到預(yù)置值為止。 下列條件發(fā)生時(shí),RTO指令保持其累加值: 階梯變假。 用戶改變到編程方式。 處理器出錯(cuò)或斷電。相關(guān)的SFC步變無(wú)效。 當(dāng)處理器重新運(yùn)行或階梯變真時(shí),計(jì)時(shí)器從保持的值開始續(xù)計(jì)時(shí)。由于保持累加值,所以在階梯為真的時(shí)間內(nèi)保持型計(jì)時(shí)器測(cè)量了累加時(shí)間。如果RTO
13、階梯條件變假后,要復(fù)位其累加值和狀態(tài)位,用戶需在另一條階梯中編寫具有相同地址的復(fù)位指令RES。RTO指令舉例:當(dāng) limit_switch_1被置位時(shí),light_1接通180毫秒(timer_3計(jì)時(shí)).當(dāng)timer_3的累加值.ACC達(dá)到180時(shí), light_1斷開同時(shí)light_2接通.而且light_2保持導(dǎo)通直到timer_3被復(fù)位。如果在timer_3正計(jì)時(shí)時(shí)limit_switch_2被清零,則light_1保持導(dǎo)通。當(dāng)limit_switch_2被復(fù)位時(shí),RES指令復(fù)位timer_3(清零狀態(tài)位和.ACC)。4.加計(jì)數(shù)指令(CTU) CTU指令是一條輸出指令。操作數(shù):操作數(shù) 數(shù)
14、據(jù)類型 格式 說(shuō)明 計(jì)數(shù)器 COUNTER 標(biāo)簽 計(jì)數(shù)器結(jié)構(gòu) 預(yù)置值 DINT 立即數(shù) 計(jì)數(shù)次數(shù) 累加值 DINT 立即數(shù) 計(jì)數(shù)器已經(jīng)計(jì)數(shù)的次數(shù),一般初始值為0 計(jì)數(shù)器結(jié)構(gòu):助記符 數(shù)據(jù)類型 說(shuō)明 .CU BOOL 加計(jì)數(shù)使能位標(biāo)識(shí)CTU指令被使能 .DN BOOL 完成位標(biāo)識(shí)累加值(.ACC)>=(預(yù)置值.PRE) .OV BOOL 益出位標(biāo)識(shí)計(jì)數(shù)器超過(guò)上限值2147483647。然后計(jì)數(shù)器返回到-2147483648。并再開始加計(jì)數(shù) .PRE DINT 預(yù)置值指定在指令置位完成位(.DN)之前累加值所達(dá)到的值 .ACC DINT 累加值表示指令已經(jīng)計(jì)數(shù)的梯級(jí)轉(zhuǎn)換的次數(shù)。 說(shuō)明:CTU
15、指令向上計(jì)數(shù)。 如果指令被使能時(shí)加計(jì)數(shù)使能位(.CU)是清零狀態(tài),則CTU指令使計(jì)數(shù)器加1。如果指令被使能位(.CU)是置位狀態(tài),或指令被禁止,CTU指令保持它的累加值(.ACC)。 即使完成位(.DN)被置位之后,累加值也繼續(xù)增加。如果要清零累加值,可以用一條引用同一計(jì)數(shù)器結(jié)構(gòu)的RES指令,或?qū)?值到計(jì)數(shù)器的累加值。CTU指令舉例:limit_switch_1由禁止變?yōu)槭鼓?0次之后,完成位.DN被置位。并且接通light_1。如果limit_switch_1繼續(xù)由禁止變?yōu)槭鼓?則計(jì)數(shù)器counter_1繼續(xù)增加它的計(jì)數(shù)值,且完成位.DN保持置位狀態(tài)。當(dāng)limit_switch_2被使能時(shí),
16、RES指令復(fù)位counter_1(清零狀態(tài)位和.ACC值)并且關(guān)斷l(xiāng)ight_1。5.減計(jì)數(shù)指令(CTD) CTD指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 計(jì)數(shù)器 COUNTER 標(biāo)簽 計(jì)數(shù)器結(jié)構(gòu) 預(yù)置值 DINT 立即數(shù) 計(jì)數(shù)次數(shù) 累加值 DINT 立即數(shù) 計(jì)數(shù)器已經(jīng)計(jì)數(shù)的次數(shù),一般初始值為0 計(jì)數(shù)器結(jié)構(gòu):助記符 數(shù)據(jù)類型 說(shuō)明 .CD BOOL 減計(jì)數(shù)使能位標(biāo)識(shí)CTD指令被使能 .DN BOOL 完成位標(biāo)識(shí)累加值(.ACC)(預(yù)置值.PRE) .UN BOOL 下出位標(biāo)識(shí)計(jì)數(shù)器超過(guò)下限值-2147483648。然后計(jì)數(shù)器返回到2147483647。在開始減計(jì)數(shù) .PRE
17、DINT 預(yù)置值指定在指令置位完成位(.DN)之前累加值所達(dá)到的值 .ACC DINT 累加值表示指令已經(jīng)計(jì)數(shù)的梯級(jí)轉(zhuǎn)換的次數(shù)。 說(shuō)明:CTD指令向下計(jì)數(shù)。 如果指令被使能時(shí)減計(jì)數(shù)使能位(.CD)是清零狀態(tài),則CTD指令使計(jì)數(shù)值減1。如果指令被使能時(shí)減計(jì)數(shù)位(.CU)置位,或指令被禁止,則CTD指令保持它的累加值(.ACC)。 即使完成位(.DN)被置位之后,累加值也繼續(xù)減少。如果要清零累加值,可以用一條引用同一計(jì)數(shù)器結(jié)構(gòu)的RES指令,或?qū)?值到計(jì)數(shù)器的累加值。CTD指令舉例:傳送裝置把零件帶到緩存區(qū)。每進(jìn)入一個(gè)零件,limit_switch_1被使能且counter_1的累加值加1。每取出一
18、個(gè)零件limit_switch_被使能且counter_1的累加值減1。如果有100個(gè)零件進(jìn)入緩存區(qū)(置位counter_1的完成位.DN),則關(guān)斷傳送裝置A,在緩存區(qū)有空間之前,不用傳送零件進(jìn)入緩存區(qū)。 6.復(fù)位指令(RES) RES指令是一條輸出指令。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 結(jié)構(gòu) TIMER CONTROL COUNTER 標(biāo)簽 復(fù)位的結(jié)構(gòu) 三、比較指令 1.比較指令(CMP) CMP是一條輸入指令。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 表達(dá)式 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 表達(dá)式由被運(yùn)算符分隔的標(biāo)簽與/或立即數(shù)組成 說(shuō)明:CMP指令執(zhí)行表達(dá)式中指定的算
19、術(shù)運(yùn)算比較。用戶要執(zhí)行的運(yùn)算由表達(dá)式定義。用運(yùn)算符,標(biāo)簽和立即數(shù)定義表達(dá)式。表達(dá)式中的復(fù)雜部分用圓括號(hào)()定義。 有效運(yùn)算符運(yùn)算符 說(shuō)明 最優(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 自然對(duì)數(shù) REAL LOG 以10為底的對(duì)數(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)算。可以通過(guò)把分組項(xiàng)組合到圓括號(hào)內(nèi)來(lái)改變運(yùn)算順序,強(qiáng)制指令在執(zhí)行其他運(yùn)算
21、之前執(zhí)行圓括號(hào)內(nèi)的運(yùn)算,來(lái)改變運(yùn)算順序。同級(jí)運(yùn)算順序從左向右執(zhí)行。順序 運(yùn)算符 1 ACS,ASN,ATN,COS,DEG,FRD,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á)式為真,則梯級(jí)輸出條件被設(shè)置為真。如果輸入一個(gè)沒(méi)有比較運(yùn)算符的表達(dá)時(shí),例如,Ivalue_1+ value_2,則指令計(jì)算
22、表達(dá)式的數(shù)值:如果表達(dá)式的值是 梯級(jí)輸出條件被設(shè)置為 非零值 真 零值 假 2.等于指令(EQU) EQU指令是一條輸入指令。 如果 value_1與value_2相等,則梯級(jí)輸出條件被設(shè)置為真。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源B比較的數(shù)值 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源A比較的數(shù)值 說(shuō)明:EQU指令測(cè)試源A的值與源B的值是否相等。REAL數(shù)據(jù)類型的數(shù)值很少絕對(duì)相等。如果必須確定兩個(gè)REAL值是否相等,可以使用LIM指令。3.大于或等于指令(GEQ) GEQ指令是一條輸入指令。 如果 value
23、_1大于或等于value_2,則梯級(jí)輸出條件被設(shè)置為真。操作數(shù)操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源B比較的數(shù)值 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源A比較的數(shù)值 說(shuō)明:GEQ指令測(cè)試源A的值是否大于或等于源B的值。4.大于指令(GRT) GRT指令是一條輸入指令。 如果 value_1大于value_2,則梯級(jí)輸出條件被設(shè)置為真。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源B比較的數(shù)值 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源A比較的數(shù)
24、值 說(shuō)明:GRT指令測(cè)試源A的值是否大于源B的值。5.小于或等于指令(LEQ) GEQ指令是一條輸入指令。 如果 value_1小于或等于value_2,則梯級(jí)輸出條件被設(shè)置為真。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源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,則梯級(jí)輸出條件被設(shè)置為真。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源B比較的數(shù)值
25、 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源A比較的數(shù)值 說(shuō)明:LES指令測(cè)試源A的值是否小于源B的值。7.極限比較指令(LIM) LIM指令是一條輸入指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 下限 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 下限值 源B測(cè)試 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 測(cè)試值 上限 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 上限值 說(shuō)明:LIM指令比較測(cè)試值是否在下限和上限范圍內(nèi)。LIM指令舉例: 例1LowLimit<=HighLimit: 當(dāng)0<=value<=100時(shí),接通light_
26、1.例2LowLimit>=HighLimit: 當(dāng)value>=0或value<=-100時(shí),接通light_1.8.屏蔽等于指令(MEQ) MEQ指令是一條輸入指令。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源 SINT INT DINT 立即數(shù) 標(biāo)簽 與比較值比較的數(shù)值 屏蔽 SINT INT DINT 立即數(shù) 標(biāo)簽 阻止或通過(guò)的位 比較 SINT INT DINT 立即數(shù) 標(biāo)簽 與源值比較的數(shù)值 說(shuō)明:MEQ指令比較通過(guò)屏蔽的源值和比較值的結(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 通過(guò)屏蔽的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 通過(guò)屏蔽的value_2:0 1 0 1 0 1 0 1 1 1 1 1 * * * * 9.不等于指令(NEQ) NEQ指令是一條輸入指令。 如果 value_1不等于value_2,則梯級(jí)輸出條件被設(shè)置為真。操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源A SINT INT DINT REAL
28、立即數(shù) 標(biāo)簽 與源B比較的數(shù)值 說(shuō)明:NEQ指令測(cè)試源A的值與源B的值是否相等。四、計(jì)算/算術(shù)指令1 計(jì)算指令(CPT)CPT指令是一條輸出指令。操作數(shù):操作數(shù): 數(shù)據(jù)類型: 格式: 說(shuō)明: 目的單元 SINT INT DINT REAL 標(biāo)簽 存儲(chǔ)結(jié)果的標(biāo)簽表達(dá)式 SINT lNT DINT REAL 立即數(shù) 標(biāo)簽 表達(dá)式由運(yùn)算符分開的標(biāo)簽/立即數(shù)組成。說(shuō)明:CPT指令執(zhí)行表達(dá)式中定義的算術(shù)運(yùn)算。當(dāng)指令被使能時(shí)CPT指令計(jì)算表達(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)算符: 說(shuō)明: 最優(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 自然對(duì)數(shù) REAL LOG 以10為底的對(duì)數(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)算。可以通過(guò)把分組項(xiàng)組合到圓括號(hào)內(nèi)來(lái)改變運(yùn)算順序強(qiáng)制指令在執(zhí)行其他運(yùn)算之前執(zhí)行圓括號(hào)內(nèi)的運(yùn)算來(lái)改變運(yùn)算順序。同級(jí)的運(yùn)算順序是從左向右執(zhí)行。順序: 運(yùn)算符: 1 ACS,ASN,ATN,COS,DEG,FRD,LN,LOG,RAD,S IN, SQR, TAN TOD 2 * 3 -(取反)NOT 4 *,/ 5 -(減)+ 6 AND 7 XOR 8 OR 執(zhí)行:條件: 動(dòng)作
31、: 預(yù)掃描 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為假 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為真 指令計(jì)算表達(dá)式并存放結(jié)果于目的單元梯級(jí)輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無(wú)CPT指令舉例: 當(dāng)指令被使能時(shí)CPT指令計(jì)算value_1乘以5的結(jié)果,然后此結(jié)果被value_2除以7的結(jié)果除并把最后結(jié)果存放在result_1內(nèi). 2 加法指令(ADD) ADD指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 與源B操作數(shù)相加的值。 說(shuō)明:ADD指令使源A操作數(shù)與源B操作數(shù)相加并存放計(jì)算結(jié)果于目的單
32、元內(nèi)。 執(zhí)行:條件: 動(dòng)作: 預(yù)掃描 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為假 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為真 目的單元=源A+源B,梯級(jí)輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無(wú) ADD指令舉例: 當(dāng)指令使能時(shí)ADD指令使float_value_1與float_value_2相加并存放結(jié)果于add _result內(nèi)。3 減法指令(SUB) SUB指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源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)簽 存放計(jì)算結(jié)果的標(biāo)簽。 說(shuō)明:SUB指令使源A操作數(shù)減去源B操作數(shù)并存放結(jié)果于目的單元內(nèi)。執(zhí)行:條件: 動(dòng)作: 預(yù)掃描 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為假 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為真 目的單元=源A一源B梯級(jí)輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無(wú) SUB指令舉例: 當(dāng)指令使能時(shí)SUB指令使float _value_1減去float_ value_2并存放結(jié)果于subtract_result內(nèi)。4 乘法指令(MUL) MUL指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格
34、式 說(shuō)明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 被乘數(shù) 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 乘數(shù) 目的單元 SINT INT DINT REAL 標(biāo)簽 存放計(jì)算結(jié)果的標(biāo)簽。 說(shuō)明:MUL指令使源A操作數(shù)與源B操作數(shù)相乘并存放計(jì)算結(jié)果于目的單元。執(zhí)行:條件: 動(dòng)作: 預(yù)掃描 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為假 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為真 目的單元=源A*源B,梯級(jí)輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無(wú)MUL指令舉例: 當(dāng)指令使能時(shí)MUL指令使float_value_1與float_value_2相乘
35、并存放結(jié)果于multjply_result內(nèi)。5除法指令(DIV) DIV指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源A SINT INT DINT REAL 立即數(shù) 標(biāo)簽 被除數(shù)值。 源B SINT INT DINT REAL 立即數(shù) 標(biāo)簽 除數(shù)值。 說(shuō)明:DIV指令使源A操作數(shù)被源B操作數(shù)除并存放結(jié)果于目的單元。 執(zhí)行:條件: 動(dòng)作: 預(yù)掃描 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為假 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為真 目的單元=源A/源B, 梯級(jí)輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無(wú) DIV指令舉例: 當(dāng)指令使能時(shí)DIV指令使f
36、loat_value_1被float_value_2除并存放結(jié)果于divide_result內(nèi)。6 平方根指令(SQR) SQR指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 計(jì)算該值的平方根。 目的單元 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 存放計(jì)算結(jié)果的標(biāo)簽。 說(shuō)明: SQR指令計(jì)算源操作數(shù)的平方根并存放計(jì)算結(jié)果于目的單元內(nèi)。如果源操作數(shù)是負(fù)數(shù)則指令在計(jì)算源操作數(shù)的平方根之前先計(jì)算其絕對(duì)值。 執(zhí)行:條件: 動(dòng)作: 預(yù)掃描 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為假 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為真
37、目的單元=梯級(jí)輸出條件被設(shè)置為真。Destination=(Soure)1/2 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無(wú) SQR指令舉例: 當(dāng)指令被使能時(shí)SQR指令計(jì)算value_1的平方根并存放計(jì)算結(jié)果于sqr_result內(nèi)。7 取反指令(NEG) NEG指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 要取反的數(shù)值。 目的 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 存放計(jì)算結(jié)果的標(biāo)簽。 說(shuō)明: NEG指令改變?cè)床僮鲾?shù)的符號(hào)并存放結(jié)果于目的單元。如果對(duì)一個(gè)負(fù)數(shù)取反則結(jié)果是正數(shù)。如果對(duì)正數(shù)取反則結(jié)果是負(fù)數(shù)。執(zhí)
38、行:條件: 動(dòng)作: 預(yù)掃描 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為假 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為真 目的單元=0一源操作數(shù),梯級(jí)輸出條件被設(shè)置為真。 五、傳送/邏輯指令1. 傳送指令(MOV) MOV指令是一條輸出指令。操作數(shù): 操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 被傳送(復(fù)制)的數(shù)值 目的單元 SINT INT DINT REAL 立即數(shù) 標(biāo)簽 存放計(jì)算結(jié)果的標(biāo)簽。 說(shuō)明: MOV指令復(fù)制源操作數(shù)到目的單元。源操作數(shù)保持不變。執(zhí)行:條件: 動(dòng)作: 預(yù)掃描 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為假 梯級(jí)輸出條件被設(shè)置為假。 梯
39、級(jí)輸入條件為真 指令復(fù)制源操作數(shù)到目的單元。梯級(jí)輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 不影響 故障條件: 無(wú) MOV指令舉例: 當(dāng)指令被使能時(shí),MOV指令復(fù)制在value_1內(nèi)的數(shù)據(jù)到value_2.2. 屏蔽傳送指令(MVM) MVM指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源 SINT INT DINT 立即數(shù) 標(biāo)簽 被傳送的值 屏蔽 SINT INT DINT 立即數(shù) 標(biāo)簽 阻止或通過(guò)的位。 目的單元 SINT INT DINT 標(biāo)簽 存放結(jié)果的標(biāo)簽。 說(shuō)明: MVM指令復(fù)制源操作數(shù)數(shù)值到目的單元并且允許部分?jǐn)?shù)據(jù)被屏蔽。源操作數(shù)保持不變。當(dāng)指令被使能時(shí)MVM指令通過(guò)屏蔽
40、傳送或阻止源數(shù)據(jù)位。屏蔽位的一個(gè)1值意味著位數(shù)據(jù)可以通過(guò)。屏蔽位的一個(gè)O值意味著位數(shù)據(jù)被阻止。如果用混合整型數(shù)據(jù)類型則指令用O值來(lái)填充小整數(shù)數(shù)據(jù)類型的高位以使它們與最大整型數(shù)據(jù)類型的大小相同。輸入立即數(shù)作為屏蔽值當(dāng)輸入立即數(shù)作為屏蔽值時(shí)編程軟件默認(rèn)為是十進(jìn)制數(shù)值。如果要輸入一個(gè)其它格式的屏蔽值可以在數(shù)值之前加相應(yīng)的前綴如下表所示:前綴: 說(shuō)明: 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)志故障條件: 無(wú) MVM指令舉例:當(dāng)指令被使能時(shí)MVM指令從value_1復(fù)制數(shù)據(jù)到value_2同時(shí)允許數(shù)據(jù)被
41、屏蔽(屏蔽操作數(shù)內(nèi)各位的一個(gè)0值屏蔽在value_1內(nèi)的位數(shù)據(jù))。陰影部分表示value_2內(nèi)的數(shù)值被改變。3. 位域分配(BTD) BTD指令是一條輸出指令。 操作數(shù):操作數(shù): 數(shù)據(jù)類型: 格式:說(shuō)明: 源 SINT INT D INT 立即數(shù) 標(biāo)簽 包含要傳送數(shù)據(jù)位的標(biāo)簽。 源位 D INT立即數(shù)(0一31 DINT) (0一15 INT)(0一7 SINT) 開始傳送位的位置號(hào)(低位號(hào)) 必須在源數(shù)據(jù)類型的有效范圍內(nèi)。 目的 SINT INT D INT標(biāo)簽傳送位的目的單元標(biāo)簽。 目的位 D INT立即數(shù)從源操作數(shù)復(fù)制的位在目的單元的起始位號(hào)(低位號(hào))必須在目的操作數(shù)數(shù)據(jù)類型的有效范圍內(nèi)
42、。 長(zhǎng)度 D INT立即數(shù)(1一32) 被傳送的位的數(shù)量。 說(shuō)明: BTD指令復(fù)制源操作數(shù)的指定位并傳送這些位到適當(dāng)?shù)奈恢貌堰@些位寫到目的元內(nèi)。目的單元內(nèi)的其余部分保持不變。當(dāng)指令被使能時(shí)B丁O指令復(fù)制來(lái)自源操作數(shù)的位組到目的單元內(nèi)。該位組由源位(位組的低位位號(hào))和長(zhǎng)度(要復(fù)制的位的數(shù)量)確定。目的位確定目的單元內(nèi)開始的低位號(hào)。源操作數(shù)保持不變。如果位字段擴(kuò)展的長(zhǎng)度超過(guò)目的單元的邊界則指令不保存超出的位。超出的位也不與下個(gè)字重疊。如果用混合整數(shù)數(shù)據(jù)類型則指令用O值來(lái)填充小整數(shù)數(shù)據(jù)類型的高位以使它們與最大數(shù)據(jù)類型的大小相同。執(zhí)行:條件: 動(dòng)作: 預(yù)掃描 梯級(jí)輸出條件被設(shè)置為假 梯級(jí)輸入條件為假
43、 梯級(jí)輸出條件被設(shè)置為假 梯級(jí)輸入條件為真 指令復(fù)制并且傳送源數(shù)據(jù)位到目的單元。 梯級(jí)輸出條件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無(wú) BTD指令舉例: 例1當(dāng)指令被使能時(shí)指令傳送在value_1內(nèi)的位。Value_1執(zhí)行BTD指令之前 Value_1 執(zhí)行BTD指令之后4. 清零指令(CLR) CLR指令是一條輸出指令。 操作數(shù):操作數(shù): 數(shù)據(jù)類型: 格式: 說(shuō)明: 目的 SINT INT DINT REAL 標(biāo)簽 被清零數(shù)據(jù)的標(biāo)識(shí)符 說(shuō)明:CLR指令清零目的單元的所有位。執(zhí)行:條件: 動(dòng)作: 預(yù)掃描: 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸入條件為假 梯級(jí)輸出條件被設(shè)置為假
44、。 梯級(jí)輸入條件為真 指令清零目的單元內(nèi)的數(shù)據(jù)。 梯級(jí)輸出被件被設(shè)置為真。 算術(shù)狀態(tài)標(biāo)志: 影響算術(shù)狀態(tài)標(biāo)志 故障條件: 無(wú) CLR指令舉例: 當(dāng)使能時(shí)CLR指令清零value_1內(nèi)的所有位。5. 按位與指令(AND) AND指令是一條輸出指令。 操作數(shù):操作數(shù) 數(shù)據(jù)類型 格式 說(shuō)明 源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)簽。 說(shuō)明: AND指令執(zhí)行源A與源B操作數(shù)的按位與運(yùn)算并存放結(jié)果于目的單元。 當(dāng)指令被使能時(shí)執(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í)行:條件: 動(dòng)作: 預(yù)掃描 梯級(jí)輸出條件被設(shè)置為假。 梯級(jí)輸
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 網(wǎng)絡(luò)安全全面防護(hù)措施策略
- DB6528T 140-2024庫(kù)爾勒香梨密植高效栽培技術(shù)規(guī)程
- 五年期產(chǎn)品供應(yīng)合同書
- 個(gè)人住房融資合同協(xié)議書
- 人事保管檔案合同實(shí)施細(xì)則
- 個(gè)人養(yǎng)殖場(chǎng)合作協(xié)議合同
- 個(gè)人合伙合作協(xié)議書合同范本
- 個(gè)人借款合同延期至協(xié)議
- 產(chǎn)品銷售補(bǔ)償合同范本
- 買賣合同糾紛起訴書范本
- 2024-2025學(xué)年湖北省武漢市部分重點(diǎn)中學(xué)高一上學(xué)期期末聯(lián)考數(shù)學(xué)試卷(含答案)
- 排球正面上手傳球 說(shuō)課稿-2023-2024學(xué)年高一上學(xué)期體育與健康人教版必修第一冊(cè)
- 2025年浙江省交通投資集團(tuán)財(cái)務(wù)共享服務(wù)中心招聘2名高頻重點(diǎn)提升(共500題)附帶答案詳解
- 做投標(biāo)文件培訓(xùn)
- 9.4+跨學(xué)科實(shí)踐:制作簡(jiǎn)易活塞式抽水機(jī)課件+-2024-2025學(xué)年人教版物理八年級(jí)下冊(cè)
- 建筑工程工作計(jì)劃
- 2025年中國(guó)國(guó)際投資促進(jìn)中心限責(zé)任公司招聘管理單位筆試遴選500模擬題附帶答案詳解
- 瓶裝液化氣送氣工培訓(xùn)
- 外科護(hù)理課程思政課程標(biāo)準(zhǔn)
- 船舶航行安全
- 道德經(jīng)全文完整版本
評(píng)論
0/150
提交評(píng)論