单片机汇编语言如何合理添加注释,绘制流程图

使用单片机汇编语言设计的双按键流水灯,按下开关K2,灯从D8到D1依次亮。按下开关K1,全部灯同时闪烁。已用proteus仿真。

img

img

ORG 0000H
AJMP START
ORG 0003H
AJMP INTR0
ORG 0013H
AJMP INTR1
START:MOV IE,#85H
MOV IP,#01H
MOV TCON,#00H
MOV SP,#60H
MOV P0,#0FFH
MOV P3,#0FFH
MOV A,#0FEH
LP1:MOV P0,A
RL A
LCALL DELAY
SJMP LP1
INTR0:PUSH ACC
PUSH PSW
MOV R1,#10
MOV A,#00H
XH: MOV P0,A
LCALL DELAY
CPL A
DJNZ R1,XH
POP PSW
POP ACC
RETI
INTR1:PUSH ACC
PUSH PSW
MOV A,#7FH
MOV R2,#16
XH1:MOV P0,A
LCALL DELAY
RR A
DJNZ R2,XH1
POP PSW
POP ACC
RETI
DELAY: MOV R7,#20
DELAY1:MOV R6,#20
DELAY2:MOV R5,#248
DJNZ R5,$

汇编语言代码的注释是每⾏从分号“;”开始的,分号之后的内容都属于注释。⼀般⽽⾔,的注释在以下⼏个地⽅:
1、程序的最前⾯,注释内容⼀般说明该程序总的说明,解释程序的主要功能,程序的版本号,程序的修改⽇志,程序的编制⼈等等
2、⼦程序的前⾯,⼀般说明该⼦程序或函数完成的功能,输⼊参数,输出参数,影响的标志位等等。
3、指令⾏的后⾯,注释该⾏语句的功能。
⽐如以下简单程序的注释。
;--------------------------------------
;该程序完成⼀个灯的闪烁
;编制时间:XXXXX
;完成⼈:XXXX
;--------------------------------------
ORG 0000H
LJMP :
ORG 0030H

另外关于流程图,其实刚开始学习阶段,越是要养成绘制的习惯,即使程序再简单,都是学习和积累经验的时候,而且程序都是在编写调试过程中不断改进完善的,因此流程图就在这个过程中显得特别重要了,到了以后复杂的产品代码了之后,会发现很有用!

汇编语言是加不了注释的,只能自己做文档,复制程序,然后添加说明,流程图的话一般在编程之前做的,编程之后做的流程图只用于写说明书,你的动作流程简单,直接按顺序写就好了。