單片機邏輯運算指令_第1頁
單片機邏輯運算指令_第2頁
單片機邏輯運算指令_第3頁
單片機邏輯運算指令_第4頁
單片機邏輯運算指令_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機邏輯運算指令1第1頁,共16頁,2022年,5月20日,3點8分,星期二異或運算: 符號 A Z B 記作 Z = A + B 輸入信號相同則輸出為0,輸入信號相異則輸出為1。非運算:求反 符號 A Z 記作 Z = A2第2頁,共16頁,2022年,5月20日,3點8分,星期二 一、 對A累加器進行的邏輯操作:1. CPL A ;A求反2. CLR A ;A清03.移位指令: (1). RR A (2).RRC A 7 0C7 03第3頁,共16頁,2022年,5月20日,3點8分,星期二 (3).RL A (4).RLC A 移位指令助記符意義: 第一個字母R 表示移位操作。 第二個

2、字母 表示移位方向,L 向左;R 向右。 第三個字母 表示是否通過C。 為C表示連同C共9位數(shù)一起移位 無第三字母表示與C無關(guān)。4.SWAP A ;A的內(nèi)容高低半字節(jié)相交換7 0C7 04第4頁,共16頁,2022年,5月20日,3點8分,星期二例:CLR C MOV A , #0E2H RL A RLC A RR A RRC A SWAP A ; C = 0;1 1 1 0 0 0 1 0 E2H;1 1 0 0 0 1 0 1 ;1 0 0 0 1 0 1 0 C=1;0 1 0 0 0 1 0 1;1 0 1 0 0 0 1 0 C=1;0 0 1 0 1 0 1 05第5頁,共16頁,

3、2022年,5月20日,3點8分,星期二例:已知30H單元的內(nèi)容為X,且X為無符號數(shù),求4X送入31H單元存放,求X/4 的整數(shù)部份送入32H單元存放,(0X63)討論:將一個二進制數(shù)左移一次等于乘2的運算, 左移n次 等于乘2n 同理將其右移一次等于除2的運算, 右移n次等于除2n。程序如下: 6第6頁,共16頁,2022年,5月20日,3點8分,星期二 MOV A,30H ;x RL A ;2X RL A ;4X MOV 31H, A MOV A,30H ;X CLR C RRC A ;X/2 CLR C RRC A ;X/4 MOV 32H ,A7第7頁,共16頁,2022年,5月20日

4、,3點8分,星期二二、 包含雙操作數(shù)的邏輯運算指令:一般形式: ANL 與 ORL 第一操作數(shù),第二操作數(shù) 或 XRL 異或功能:第一操作數(shù)和第二操作數(shù)進行相應(yīng)的邏輯運算,結(jié)果在第一操作數(shù)指出的地址。源及目的見 P50P51頁。例8第8頁,共16頁,2022年,5月20日,3點8分,星期二例1: MOV A,#46H MOV 40H, #59H ANL A,#37H ORL 40H,A ORL A, 40H XRL A,#55H 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 1 0 0 0 0 0 1 1 0 A=06H 0 1 0 1 1 0 0 1 0 1 0 1 1 1 1

5、 1 40H=5F 0 0 0 0 0 1 1 0 0 1 0 1 1 1 1 1 A=5FH 0 1 0 1 0 1 0 1 0 0 0 0 1 0 1 0 A=0AH9第9頁,共16頁,2022年,5月20日,3點8分,星期二注:邏輯運算結(jié)果均在第一操作數(shù)中(目的),第二操作數(shù)內(nèi)容不變。10第10頁,共16頁,2022年,5月20日,3點8分,星期二 此類邏輯運算指令用途很廣,舉例: 例2 用“與”掩碼的方法切取數(shù)據(jù)中需要的部分MOV A, #0F6H ;設(shè)A中為有符號數(shù) ANL A,# 0FH ;屏蔽高4位 (A)=06H ANL A,#7FH ;屏蔽符號位 (A)=76HANL A,#

6、80H ;切取符號位 (A)=80H0FH,7FH,80H,稱為掩碼,使用不同的掩碼可屏蔽掉不同的部份,留下有用的信息。11第11頁,共16頁,2022年,5月20日,3點8分,星期二例3用“或”指令置位任何RAM單元或寄存器的某些位,方法是將需置1的位和“1”相或。例如, ORL P1 ,#00110011B;P1口的D0,D1,D4,D5位置1例4拼湊字節(jié)。例如要求將A內(nèi)容的低2位信息送入P1口的低2位,P1口原高6位不變。 ANL A,#00000011B ;切取A中低2位 ANL P1,#11111100B ;屏蔽P1口低2位 ORL P1, A ;拼湊字節(jié) 12第12頁,共16頁,2

7、022年,5月20日,3點8分,星期二例5用異或指令對RAM單元或寄存器某些位求反。方法是:欲取反的位與“1”相異或例如:XRL P1 ,#00110011B ;P1口的D 0,D1 ,D 4,D 5取反。例6用異或指令判斷二數(shù)是否相等。例如: MOV A, 30H XRL A, 31H ;若運行結(jié)果(A)=0 則(30H)=(31H)13第13頁,共16頁,2022年,5月20日,3點8分,星期二三、 位邏輯操作指令: 1. ORL 或 C , BIT ;C和某位地址的內(nèi)容相 ANL 與 2. ORL 或 C , BIT ;C和某位地址內(nèi)容的反碼相 ANL 與 3. CLR 清零 CPL C

8、 (BIT) ;C (BIT) 求反 SETB 置114第14頁,共16頁,2022年,5月20日,3點8分,星期二位邏輯指令舉例 MOV 24H, #02H MOV 2EH, #05H MOV C, 21H ANL C, 72H CLR C ORL C, 24H ANL C, 71H SETB C CPL C ORL C, 21H CLR 72H ;(24H) = 02H,(21H位)=1(2EH)=05H,72H位70H位=1;( C )=1;( C) =1;( C) =0;(24H位)求反為1,( C )=1;(71H位)=0,與結(jié)果( C )=0;( C )=1;( C )=0;(21H位)=1,或結(jié)果( C )=1;(72H位)=0,(2EH)=01H15第15頁,共16頁,2022年,5月20日,3點8分,星期二注:位邏輯指令是某一位地址或C的內(nèi)容進行邏輯操作,參與運算的只是一位數(shù)。片內(nèi)RAM可位尋址字節(jié)地址是20H2

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論