单片机汇编语言程序解释

请教单片机高手帮忙讲讲程序的意思,帮忙在后面标记注释,谢谢!

ORG 0000H
LJMP MAIN
ORG 000BH
LJMP TIME
ORG 0100H
MAIN:MOV SP,#60H
MOV TMOD,#01H
MOV TL0,#0B0H
MOV TH0,#3CH
SETB TR0
SETB ET0
MOV R2,#2
MOV DPTR,#TAD
MOV 20H,DPH
MOV 21H,DPL
MOV DPTR,#TAB
MOV SCON,#00H
MOV R1,DPH
MOV R5,DPL
SETB EA
SCA:
MOV R3,#00H
MOV R4,#00H
MOV R0,#4
SETB F0
SSA:
MOV DPH,R1
MOV DPL,R5
SAT: CLR P1.7
MOV A,R4
MOVC A,@A+DPTR
CALL SEND
CLR C
MOV A,DPL
ADD A,#32
MOV DPL,A
MOV A,DPH
ADDC A,#0
MOV DPH,A
DJNZ R0,SAT
MOV R0,#4
CPL F0
JB F0,SHOW
INC R4
LJMP SSA
SHOW:CLR P1.6
SETB P1.7
MOV P2,R3
CALL DEL
SETB P1.6
INC R3
INC R4
CJNE R3,#10H,SSA
LJMP SCA
SEND: MOV SBUF,A
JNB TI,$
CLR TI
RET
DEL: MOV R6,#5
DEL1: MOV R7,#80
DJNZ R7,$
DJNZ R6,DEL1
RET
TIME: CLR EA
MOV 30H,A
PUSH 30H
MOV TL0,#0B0H
MOV TH0,#3CH
DJNZ R2,LOOP
MOV R2,#2
CLR C
MOV A,R5
ADD A,#2
MOV R5,A
MOV DPL,R5
MOV A,R1
ADDC A,#0
MOV R1,A
MOV DPH,R1
CJNE A,20H,LOOP
MOV A,R5
CJNE A,21H,LOOP
MOV DPTR,#TAB
MOV R1,DPH
MOV R5,DPL
LOOP: POP 30H
MOV A,30H
SETB EA
RETI

TAB: DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H

DB 000H 000H 008H 000H 088H 00CH 088H 012H 0FEH 03FH 088H 000H 048H 008H 004H 024H;
DB 044H 012H 064H 009H 054H 004H 04CH 002H 044H 021H 040H 040H 0C0H 07FH 000H 000H;"扬"
DB 000H 000H 000H 000H 000H 03FH 080H 03FH 090H 014H 090H 015H 0F0H 017H 0FEH 03EH;
DB 09EH 03FH 0C8H 00BH 048H 02AH 048H 060H 0C0H 07FH 0C0H 07FH 000H 000H 000H 000H;"州"
DB 000H 008H 040H 00CH 040H 006H 0FEH 07FH 0FEH 07FH 020H 023H 020H 032H 000H 01CH;
DB 0E0H 00FH 0F0H 003H 0D0H 00FH 0F0H 01FH 030H 010H 000H 010H 000H 01CH 000H 01CH;"工"
DB 000H 000H 000H 000H 0E0H 001H 0E0H 007H 020H 007H 020H 005H 0FEH 03FH 0FEH 07FH;
DB 090H 042H 010H 042H 0F0H 043H 0F0H 041H 000H 040H 000H 078H 000H 038H 000H 000H;"业"
这是一个16*64点阵程序,P1.7接在ST_CP端,P1.6接在译码器的E1端,P3.1和P3.0为数据的发送端和接收端
P2的低四位分别接在译码器的A B C D 四个端口

第1个回答  2010-11-24
自己不学习永远不会,找本单片机看看汇编语言章节就行了。 静下心自己看看吧!
第2个回答  2010-11-24
一条指令一条指令的看,不能燥
第3个回答  2010-11-27
#0df 点亮最左边一个数码管 需要在此从右边开始显示 。

a=temp<<(i+1);
b=temp>>(7-i);//什么意思呢?2222222222
temp=a|b;

相当于temp<<=1;
第4个回答  2010-11-24
很基础的程序,楼主应该好好看下伪指令,静下心来看上半天,应该就可以理解~本回答被网友采纳
第5个回答  2010-11-25
基础
相似回答