89c51单片机的汇编程序,帮忙翻译
jhjjc 2009-04-29 02:28:56 请高手给下面的代码添加注释并详细解释这段程序的功能(89C51单片机的代码)如果讲解的够清楚再追加分。
Q0000:LJMP Q007F
Q0003:RETI
Q000B:LJMP Q0060
Q0013:RETI
Q0024: DB FFH,FFH,FFH,FFH,FFH,FFH,FFH,FFH
DB FFH,FFH,FFH,FFH,30H,31H,32H,33H ;....0123
DB 34H,35H,36H,37H,38H,39H,41H,42H ;456789AB
DB 43H,44H,45H,46H,20H,20H,20H,31H ;CDEF...1
DB 39H,39H,39H,2FH,30H,37H,2FH,30H ;999/07/0
DB 38H,20H,20H,20H,20H,20H,20H,56H ;8......V
DB 45H,52H,3AH,4DH,34H,20H,20H,20H ;ER:M4...
DB 20H,20H,20H,20H
Q0060:MOV TL0,#BAH
MOV TH0,#EFH
PUSH PSW
PUSH A
PUSH DPL
PUSH DPH
SETB RS0
CLR RS1
LCALL Q05AA
POP DPH
POP DPL
POP ACC
POP PSW
RETI
Q007E:DB 00H
Q007F:CLR EA
CLR RS0
CLR RS1
MOV P1,#FFH
MOV P3,#FFH
MOV SP,#67H
MOV R0,#7FH
Q0090:MOV @R0,#00H
DJNZ R0,Q0090
MOV R2,#04H
MOV R0,#60H
MOV DPTR,#8200H
Q009B:MOVX A,@DPTR
INC A
MOV @R0,A
INC R0
INC DPTR
DJNZ R2,Q009B
MOV TMOD,#21H
MOV TCON,#00H
MOV TL0,#BAH
MOV TH0,#EFH
MOV TH1,#FDH
MOV TL1,#FDH
MOV PCON,#80H
MOV SCON,#D0H
SETB TR0
SETB TR1
SETB ET0
SETB EA
CLR A
MOV DPTR,#9001H
MOVX @DPTR,A
MOV DPTR,#9002H
MOVX @DPTR,A
MOV DPTR,#9003H
MOVX @DPTR,A
LCALL Q02B9
LCALL Q0414
MOV R0,#08H
LCALL Q01C8
CLR A
MOV 28H,A
MOV 29H,A
MOV 2AH,A
MOV 2BH,A
Q00E3:LCALL Q05D3
LCALL Q0421
MOV 67H,#01H
Q00EC:LCALL Q05AA
MOV 1FH,#05H
MOV A,67H
MOV DPTR,#9000H
MOVX @DPTR,A
LCALL Q01D3
CLR EA
Q00FD:CLR 20H.0
CLR P3.2
CLR TI
SETB TB8
MOV A,67H
MOV SBUF,A
ADD A,#AAH
JNB TI,$
CLR TI
CLR TB8
MOV SBUF,A
JNB TI,$
CLR TI
SETB P3.2
CLR RI
MOV R3,#32H
DJNZ R3,$
MOV R7,#00H
MOV R1,#30H
MOV R3,#08H
Q0127:MOV R4,#05H
Q0129:MOV R5,#FFH
Q012B:JBC RI,Q0135
DJNZ R5,Q012B
DJNZ R4,Q0129
LJMP Q01A0
Q0135:MOV A,SBUF
MOV @R1,A
CJNE R3,#01H,Q013E
LJMP Q0143
Q013E:ADD A,R7
MOV R7,A
INC R1
DJNZ R3,Q0127
Q0143:MOV R3,#32H
DJNZ R3,$
CLR P3.2
MOV A,R7
CJNE A,37H,Q0155
MOV A,67H
CJNE A,30H,Q0155
LJMP Q0158
Q0155:MOV A,R7
CPL A
MOV R7,A
Q0158:MOV A,R7
MOV 38H,A
LCALL Q01FD
MOV 3FH,#00H
MOV R1,#38H
MOV R3,#08H
Q0165:CLR TI
MOV A,@R1
MOV SBUF,A
CJNE R3,#01H,Q0170
LJMP Q0175
Q0170:ADD A,3FH
MOV 3FH,A
INC R1
Q0175:JNB TI,$
DJNZ R3,Q0165
CLR TI
SETB P3.2
CLR RI
MOV R3,#32H
DJNZ R3,$
MOV R4,#05H
Q0186:MOV R5,#FFH
Q0188:JBC RI,Q0192
DJNZ R5,Q0188
DJNZ R4,Q0186
LJMP Q01A0
Q0192:MOV A,SBUF
XRL A,#FFH
CJNE A,3FH,Q01A0
CLR P3.2
SETB 20H.0
LJMP Q01B2
Q01A0:CLR P3.2
MOV R3,#64H
DJNZ R3,$
LCALL Q01D3
DJNZ 1FH,Q01AF
LJMP Q01B2
Q01AF:LJMP Q00FD
Q01B2:SETB EA
JNB 20H.0,Q01BA
LCALL Q0228
Q01BA:INC 67H
DJNZ 66H,Q01C2
LJMP Q01C5
Q01C2:LJMP Q00EC
Q01C5:LJMP Q00E3
Q01C8:MOV R1,#00H
MOV R2,#00H
Q01CC:DJNZ R2,$
DJNZ R1,Q01CC
DJNZ R0,Q01CC
RET
Q01D3:MOV R3,#08H
MOV R1,#30H
Q01D7:MOV @R1,#00H
INC R1
DJNZ R3,Q01D7
RET
Q01DD: DB 7BH,08H,79H,38H,77H,00H,09H,DBH
DB FBH,22H,90H,00H,00H,75H,F0H,00H
DB 79H,10H,78H,00H,E4H,93H,25H,F0H
DB F5H,F0H,A3H,D8H,F7H,D9H,F3H,22H
Q01FD:MOV DPTR,#8102H
MOVX A,@DPTR
MOV 39H,A
MOV DPTR,#8101H
MOVX A,@DPTR
MOV 3AH,A
MOV DPTR,#8100H
MOVX A,@DPTR
MOV 3BH,A
CLR A
ORL A,28H
ORL A,29H
ORL A,2AH
ORL A,2BH
JZ Q021C
MOV A,#55H
Q021C:MOV 3CH,A
MOV DPTR,#8182H
MOVX A,@DPTR
MOV 3DH,A
MOV 3EH,#00H
RET
Q0228:MOV A,31H
CJNE A,#00H,Q0233
LCALL Q0289
LJMP Q024E
Q0233:MOV A,31H
CJNE A,#55H,Q023E
LCALL Q029E
LJMP Q024E
Q023E:MOV A,31H
CJNE A,#AAH,Q024E
LCALL Q0271
JC Q024E
LCALL Q02F6
LCALL Q0289
Q024E:MOV A,33H
JZ Q0266
MOV A,33H
CJNE A,#0AH,Q0257
Q0257:JNC Q0266
MOV A,33H
LCALL Q0381
MOV A,33H
LCALL Q03C2
MOV 33H,#00H
Q0266:ACALL Q01D3
RET