|
51单片机学习网(深圳学林电子有限公司)从0开始来学单片机...入门教程
前言:单片机是一门实践性非常强的学科,为此我们突破传统思路,全面围绕单片机试验,从简单的流水灯开始,
逐步的带领大家从这些简单的几行或者10几行的程序,来熟悉和理解单片机的指令......未经允许禁止转载!如需转载,请著名出处,并保留网站联接!
;8该程序的功能是进一步学习单片机的逻辑运算
;
;知识要点:理解熟悉单片机的逻辑运算
;运行结果:P1口输出结果为01100000,注意1为灭0为亮,从1.7到1.0排列
;ANL 0FH就是把数据与00001111相与那么遇1得原来的数遇0则为0,结果是前面的4位变0,
后面的4位保留
ORG 0000H;程序开始
LJMP MAIN;
ORG 030H;
MAIN:MOV A,#59H;A中送59H这个数
01011001
ANL A,#0FH;59H和00001111相与就是保留后4位结果为1001
SWAP A;A中的高低字节交换结果为10010000
ANL P1,#0FH;P1口的内容与A相与就是清除高4位注意P1本来为11111111即FF此时变为00001111
ORL P1,A;P1的内容与相或 10010000和00001111相或结果为01100000
ACALL DEL;调用延时以便观察
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
运行结果:P1口输出结果为01100000,注意1为灭0为亮,从1.7到1.0排列
返回单片机教学栏目
返回51单片机学习网(深圳学林电子有限公司)主页
我要参加讨论
|