单片机实验 常见问题集

1、ORG 0000H 程序开始伪指令,即origin,程序的开始地址,就是把从这句话开始直到下一个ORG指令或者END指令前的程序语句都顺序放在它指定的地址里;

2、ACALL DELAY,ACALL,51汇编的子程序调用指令,DELAY是用用户自定义延迟指令,表示调用延时子程序;

3、RL A"累加器A循环左移”指令,表示累加器A里的数据在该指令运行一次后,自动左移一位,例如累加器A里的数据是“A=10110101”执行第一次RL A这条指令后就变成“A=01101011”,执行第二次RL A这条指令后就变成“A=11010110”依次循环。

与此相对应的是累加器A循环右移指令 RR A;

4、SWAP A 数据交换指令,将A中高四位与低四位交换

START:
MOV P1, #11111111B ; P1点亮
ACALL DELAY; 调用延时子程序
MOV P1, #00000000B ; 从左向右移动 一位
ACALL DELAY
JMP START ; 转移 至 MAIN 循环
DELAY: MOV R5,#250 ; 延时子程序 约0.5 秒
D1: MOV R6,#250
D2: DJNZ R6,$
DJNZ R5,D1
RET
END
ORG 0000H
LJMP MAIN
ORG 0100H
MAIN:
MOV P1,#0F0H
MOV A,P1
SWAP A
MOV P1,A
JMP MAIN
SJMP $
END 
ORG 0000H
LJMP MAIN
ORG 0100H
MAIN:
MOV P1,#0F0H
MOV A,P1
SWAP A
MOV P1,A 
JMP MAIN
SJMP $
END 
原创文章 84 获赞 34 访问量 6万+

猜你喜欢

转载自blog.csdn.net/qq_42194332/article/details/90511243