字基本邏輯指令前世今生:匯編作為較為底層的編程語言,其最直觀的操作寄存器使得它的執(zhí)行效率非常的高,因此,匯編中會(huì)大量設(shè)置到邏輯操作,與(AND),或(OR),非(NOT)和異或(XOR),這幾個(gè)指令,除了NOT外,都是雙目操作,而NOT操作屬于單目操作,通常完成一些對(duì)指定位的數(shù)據(jù)的賦值或者置零操作。
PLC編程里面也常會(huì)用到這幾個(gè)指令
一、指令簡(jiǎn)介
1.1 AND:“與”運(yùn)算
可以使用“與”運(yùn)算指令將輸入 IN1 的值和輸入 IN2 的值按位進(jìn)行“與”運(yùn)算,并在輸出 OUT 中查詢結(jié)果。執(zhí)行該指令時(shí),輸入 IN1 的值的位 0 和輸入 IN2 的值的位 0 進(jìn)行“與”運(yùn)算。結(jié)果存儲(chǔ)在輸出 OUT 的位 0 中。 對(duì)指定值的所有其它位都執(zhí)行相同的邏輯運(yùn)算。
只有該邏輯運(yùn)算中的兩個(gè)位的信號(hào)狀態(tài)均為“1”時(shí),結(jié)果位的信號(hào)狀態(tài)才為“1”。 如果該邏輯運(yùn)算的兩個(gè)位中有一個(gè)位的信號(hào)狀態(tài)為“0”,則對(duì)應(yīng)的結(jié)果位將復(fù)位。
1.2 OR:“或”運(yùn)算
可以使用“或”運(yùn)算指令將輸入 IN1 的值和輸入 IN2 的值按位進(jìn)行“或”運(yùn)算,并在輸出 OUT 中查詢結(jié)果。執(zhí)行該指令后,將 IN1 輸入的值的位 0 和 IN2 輸入的值的位 0 進(jìn)行“或”運(yùn)算。 結(jié)果存儲(chǔ)在輸出 OUT 的位 0 中。 對(duì)指定變量的所有位都執(zhí)行相同的邏輯運(yùn)算
只要該邏輯運(yùn)算中的兩個(gè)位中至少有一個(gè)位的信號(hào)狀態(tài)為“1”,結(jié)果位的信號(hào)狀態(tài)就為“1”。 如果該邏輯運(yùn)算的兩個(gè)位的信號(hào)狀態(tài)均為“0”,則對(duì)應(yīng)的結(jié)果位將復(fù)位。
1.3 XOR:“異或”運(yùn)算
可以使用“異或”運(yùn)算指令將輸入 IN1 的值和輸入 IN2 的值按位進(jìn)行“異或”運(yùn)算,并在輸出 OUT 中查詢結(jié)果。執(zhí)行該指令后,將 IN1 輸入的值的位 0 和 IN2 輸入的值的位 0 進(jìn)行“異或”運(yùn)算。 結(jié)果存儲(chǔ)在輸出 OUT 的位 0 中。 對(duì)指定值的所有其它位都執(zhí)行相同的邏輯運(yùn)算。
當(dāng)該邏輯運(yùn)算中的兩個(gè)位中有一個(gè)位的信號(hào)狀態(tài)為“1”時(shí),結(jié)果位的信號(hào)狀態(tài)為“1”。 如果該邏輯運(yùn)算的兩個(gè)位的信號(hào)狀態(tài)均為“1”或“0”,則對(duì)應(yīng)的結(jié)果位將復(fù)位。
二、指令應(yīng)用
2.1 AND:“與”運(yùn)算
只有該邏輯運(yùn)算中的兩個(gè)位的信號(hào)狀態(tài)均為“1”時(shí),結(jié)果位的信號(hào)狀態(tài)才為“1”。 如果該邏輯運(yùn)算的兩個(gè)位中有一個(gè)位的信號(hào)狀態(tài)為“0”,則對(duì)應(yīng)的結(jié)果位將復(fù)位。
2.2 OR:“或”運(yùn)算
只要該邏輯運(yùn)算中的兩個(gè)位中至少有一個(gè)位的信號(hào)狀態(tài)為“1”,結(jié)果位的信號(hào)狀態(tài)就為“1”。 如果該邏輯運(yùn)算的兩個(gè)位的信號(hào)狀態(tài)均為“0”,則對(duì)應(yīng)的結(jié)果位將復(fù)位。
2.3 XOR:“異或”運(yùn)算
當(dāng)該邏輯運(yùn)算中的兩個(gè)位中有一個(gè)位的信號(hào)狀態(tài)為“1”時(shí),結(jié)果位的信號(hào)狀態(tài)為“1”。 如果該邏輯運(yùn)算的兩個(gè)位的信號(hào)狀態(tài)均為“1”或“0”,則對(duì)應(yīng)的結(jié)果位將復(fù)位。
三、指令參數(shù)說明
引腳參數(shù)說明