MOV P1,A MOV A,@R0 MOV P0,A INC R0 MOV A,@R1 MOV P2,A INC R1 INC R3 DJNZ R7,LP1 DJNZ R5,LP2 DJNZ R4,NEXT DJNZ 60H,AGAIN JMP begin begin:mov sp,#40h mov dptr,#table3 mov p0,#00 mov p2,#00 call delay x4:mov 21h,#00h mov r0,#00h mov r5,#04 x3:mov r3,#20h x2:mov r4,#16 mov r1,#00h mov r2,00h
x1:mov a,r1 mov p1,r1 inc r1 mov a,r2 movc a,@a+dptr mov p0,a inc r2 mov a,r2 movc a,@a+dptr mov p2,a inc r2
附录
- 22 -
附录
call delay mov p0,#00h mov p2,#00h djnz r4,x1 djnz r3,x2 inc 21h inc 21h
mov r0,21h cjne r2,#0beh,x3 jmp start1 START1: MOV SP,#70H MOV R6,#00H MOV R0,#20H MOV R1,#30H MOV DPTR,#TABLE1 CALL LOADING1 ;MOV R0,#20H ;MOVX A,@R0 LOOP1: MOV 60H,#6 MOV DPTR,#TABLE2 AGAIN1:MOV R0,#40H MOV R1,#50H CALL LOADING1 MOV R4,#16 NEXT1: CALL ROTATE10 ; MOV R0,#20H ; MOV A,@R0 MOV R5,#255 LP21: MOV R7,#16 MOV R3,#00H MOV R0,#20H MOV R1,#30H LP11:
MOV A,R3 MOV P1,A MOV A,@R0
- 23 -
MOV P0,A INC R0 MOV A,@R1 MOV P2,A INC R1 INC R3 DJNZ R7,LP11 DJNZ R5,LP21 DJNZ R4,NEXT1 DJNZ 60H,AGAIN1 JMP l4
LOADING1:MOV R2,#16
L_11: MOV A,#0
MOVC A,@A+DPTR MOV @R0,A INC R0 INC DPTR CLR A
MOVC A,@A+DPTR MOV @R1,A INC R1 INC DPTR
DJNZ R2,L_11 RET ROTATE10:PUSH ACC SETB RS1
MOV R3,#00H MOV R4,#16 ROTATE11:CLR CY MOV A,#40H ADD A,R3 MOV R0,A MOV A,@R0
附录
- 24 -
RRC A MOV @R0,A MOV A,#50H PUSH PSW ADD A,R3 MOV R0,A MOV A,@R0 POP PSW RRC A MOV @R0,A MOV A,#20H PUSH PSW ADD A,R3 MOV R0,A MOV A,@R0 POP PSW RRC A MOV @R0,A MOV A,#30H PUSH PSW
ADD A,R3 MOV R0,A MOV A,@R0 POP PSW RRC A MOV @R0,A INC R3
DJNZ R4,ROTATE11 CLR RS1 POP ACC RET
LOADING:MOV R2,#16
附录
- 25 -
附录
L_1 : MOV A,#00H MOVC A,@A+DPTR MOV @R0,A INC R0 INC DPTR CLR A
MOVC A,@A+DPTR MOV @R1,A INC R1 INC DPTR
DJNZ R2,L_1 RET ROTATE:PUSH ACC SETB RS1
MOV R3,#00H MOV R4,#16 ROTATE1:CLR CY MOV A,#50H ADD A,R3 MOV R0,A MOV A,@R0 RLC A MOV @R0,A MOV A,#40H PUSH PSW ADD A,R3 MOV R0,A MOV A,@R0 POP PSW RLC A MOV @R0,A MOV A,#30H PUSH PSW ADD A,R3
- 26 -