单片机的逻辑运算
;知识要点:理解熟悉单片机的逻辑运算
;运行结果:P1 口输出4 次计算的数值,注意1 为灭0 为亮,从1.7 到1.0 排列
;与的概念:有0 为0 全1 出1.或的概念:有1 为1 全0出0.取反的概念遇1 为0 遇0 为1
;异或的概念:相同为0 不同为1
ORG 0000H;
LJMP MAIN;程序开始
ORG 030H;
MAIN:MOV A,#03CH;A 送 03C ,就是00111100
MOV R0,#0AAH;R0 送 0AA 就是10101010
CPL A;A的内容取反
MOV P1,A;输出到P1 结果为11000011
ACALL DEL;调用延时便于观察
MOV P1,#0FFH ;关断显示
MOV A,#0C3H;A的值重新载入
ANL A,R0;A 与R0 相与
MOV P1,A; 输出到P1 结果为10000010
ACALL DEL;调用延时便于观察
MOV P1,#0FFH
MOV A,#0C3H; A 的值重新载入
ORL A,R0;A与R0 相或结果为11101011
MOV P1,A;输出到P1
ACALL DEL;调用延时便于观察
MOV P1,#0FFH;关断显示
MOV A,#0C3H;A的值重新载入
XRL A,R0;;A与R0 相异或结果为01101001
MOV P1,A;;输出到P1
ACALL DEL;
MOV P1,#0FFH;;关断显示
AJMP MAIN;重新开始
DEL: MOV R7,#0FFH;延时子程序
DEL1:MOV R6,#0FFH;
DEL2:MOV R5,#01FH;
DEL3: DJNZ R5,DEL3;
DJNZ R6,DEL2;
DJNZ R7,DEL1;
RET;
END
程序在倚天版运行的状态01101001