雙操作數(shù)邏輯運算指令
發(fā)布時間:2014/6/5 21:01:02 訪問次數(shù):2208
上面的指令都是針對累加器A的邏輯運算指令,也就是說對一個寄存器的邏輯運算,ACT4070那么如果兩個寄存器之間的邏輯運算又是怎么樣的呢?
雙操作數(shù)邏輯運算指令有以下3種。
1.邏輯與運算
A與Rn中的值按位“與”,結(jié)果送入A中
A與direct中的值按位“與”,結(jié)果送入A中
A與間址尋址單元@Ri中的值按位“與”,結(jié)果送入A中
A與立即數(shù)data按位“與”,結(jié)果送入A中
direct中的值與A中的值按位“與”,結(jié)果送入direct中
direct中的值與立即數(shù)data按位“與”,結(jié)果送入direct中
后兩條指令,若直接地址direct為I/O端口PO~P3,則為端口的“讀改寫”操作。
指令說明:什么是邏輯“與”?數(shù)字電路中已經(jīng)學(xué)過:就是F=A/\B,簡記為“全1出l,有O出O”。
例如,71H和56H相“與”,將兩數(shù)寫成二進制形式:
逐位相“與”結(jié)果就是O0100000B,即20H。
從上面的例子可以看出,兩個參與運算的值只要其中有一個位上是“0”,則這位的結(jié)果就是“0”,兩個同是“1”,結(jié)果才是“1”,是不是符合邏輯“與”的結(jié)果?
知道了邏輯“與”指令的功能后,邏輯“或”和邏輯“異或”的功能就很簡單了。邏輯“或”是逐位相“或”,即有1出1,全0出0。例如,71H和56H相“或”結(jié)果就是77H;而“異或”則是逐位“異或”,即相同出0,相異出l。仍舊71H和56H相“異或”,結(jié)果是57H。
上面的指令都是針對累加器A的邏輯運算指令,也就是說對一個寄存器的邏輯運算,ACT4070那么如果兩個寄存器之間的邏輯運算又是怎么樣的呢?
雙操作數(shù)邏輯運算指令有以下3種。
1.邏輯與運算
A與Rn中的值按位“與”,結(jié)果送入A中
A與direct中的值按位“與”,結(jié)果送入A中
A與間址尋址單元@Ri中的值按位“與”,結(jié)果送入A中
A與立即數(shù)data按位“與”,結(jié)果送入A中
direct中的值與A中的值按位“與”,結(jié)果送入direct中
direct中的值與立即數(shù)data按位“與”,結(jié)果送入direct中
后兩條指令,若直接地址direct為I/O端口PO~P3,則為端口的“讀改寫”操作。
指令說明:什么是邏輯“與”?數(shù)字電路中已經(jīng)學(xué)過:就是F=A/\B,簡記為“全1出l,有O出O”。
例如,71H和56H相“與”,將兩數(shù)寫成二進制形式:
逐位相“與”結(jié)果就是O0100000B,即20H。
從上面的例子可以看出,兩個參與運算的值只要其中有一個位上是“0”,則這位的結(jié)果就是“0”,兩個同是“1”,結(jié)果才是“1”,是不是符合邏輯“與”的結(jié)果?
知道了邏輯“與”指令的功能后,邏輯“或”和邏輯“異或”的功能就很簡單了。邏輯“或”是逐位相“或”,即有1出1,全0出0。例如,71H和56H相“或”結(jié)果就是77H;而“異或”則是逐位“異或”,即相同出0,相異出l。仍舊71H和56H相“異或”,結(jié)果是57H。
上一篇:單操作數(shù)邏輯運算指令
上一篇:邏輯或運算
熱門點擊
推薦技術(shù)資料
- 新品4MP圖像傳感器̴
- 高性能SoC智能傳感芯片技術(shù)設(shè)
- 分立器件&無源元件選型參數(shù)技術(shù)
- SRAM存算一體芯片發(fā)展趨勢及市場應(yīng)用
- 大功率雙向 48 V-12 V DC/D C
- 單速率(Single Rate
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究