本次實驗通過DIPSW來實現邏輯與和邏輯或,掌握8051 CPU的邏輯指令。
邏輯運算指令
(1)邏輯與指令
ANL A, Rn ; (A)∧(Rn)→A,n=0~7
ANL A, direct ; (A)∧(direct)→A
ANL A, #data ; (A)∧#data→A
ANL A, @Ri ; (A)∧((Ri))→A,i=0~1
ANL direct, A ; (direct)∧(A)→direct
ANL direct, #data ; (direct)∧#data→direct
(2)邏輯或指令
ORL A, Rn ;(A) ∨(Rn)→A ,n=0~7
ORL A, direct ;(A) ∨(direct)→A
ORL A, #data ;(A) ∨data→A
ORL A, @Ri ;(A) ∨((Ri))→A,i=0,1
ORL direct, A ;(direct) ∨(A)→direct
ORL direct, #data ;(direct) ∨#data→direct
(4)CPL A :將累加器A的內容按位邏輯取反,不影響相關標志。
(5)邏輯異或指令
XRL A, Rn ;(A) ⊕(Rn)→A
XRL A, direct ;(A) ⊕(direct)→A
XRL A, @Ri ;(A) ⊕((Ri))→A ,i=0,1
XRL A, #data ;(A) ⊕#data→A
XRL direct, A ;(direct) ⊕(A)→direct
XRL direct, #data ;(direct) ⊕#data →direct
CPL A :將累加器A的內容按位邏輯取反,不影響相關標志。
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
51hei.png (24.59 KB, 下載次數: 53)
下載附件
2021-7-21 05:14 上傳
單片機源程序如下:
- ORG 000H
- LJMP MAIN
- ORG 0100H
- MAIN:
- MOV A,P1
- ORL A,P3
- MOV P0,A
- LCALL DELAY
- LJMP MAIN
-
- DELAY:
- MOV R2,#225
- D1:MOV R3,#250
- D2:DJNZ R3,D2
- DJNZ R2,D1
- RET
-
- END
復制代碼
仿真代碼51hei附件下載:
實驗三工程.7z
(42.25 KB, 下載次數: 3)
2021-7-21 05:15 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|