这一小节讲一下在以往的汇编中需要注意的细节问题。
1、R0,R1工作寄存器。
对于寄存器间接寻址所能使用的工作寄存器只有R0,R1两个 ,用R3~7是不行的,会报错。
2、在51汇编中实现类似于变量的方法。
通常是使用工作寄存器
也就是R0~R7
如果不够用怎么办。
此时可以在进入子函数后将工作寄存器里的值压入栈,执行完后出栈
在此过程中工作寄存器充当类似于局部变量的作用
ORG 0000H
LJMP MAIN
SDC:
PUSH 00H ;第0组 R0寄存器地址为00H
MOV R0,#07FH
MOV A,R0
POP 00H
RET
SDD:
PUSH 01H
MOV R1,#0FH
MOV A,R1
POP 01H
RET
MAIN:
MOV R0,#0F1H
MOV R1,#0DCH
ACALL SDC
ACALL SDD
MOV A,R0
MOV A,R1
JMP $
END
3、如果要用P0口驱动外设一定要加上拉电阻。
4、 Proteus常用 原件
</

这篇笔记介绍了51单片机汇编编程中的细节问题,强调R0,R1作为工作寄存器的限制,如何实现变量功能,以及P0口驱动外设需加电阻。同时提到了Proteus仿真中常用的原件,如数码管、液晶屏、舵机等,并分享了相关电路图和程序的下载链接。"
104314831,8345774,模仿JDK动态代理源码实现简单动态代理,"['Java', '动态代理', '源码解析', '编程技巧']
最低0.47元/天 解锁文章
1648

被折叠的 条评论
为什么被折叠?



