ORG 0000H
LJMP RESET
ORG 0003H
LJMP EXT0
ORG 000BH
LJMP EXT1
ORG 00013H
LJMP INT0
ORG 001BH
LJMP INT1
ORG 0023H
LJMP SINT
ORG 0050H
RESET:
SETB EX0
SETB EX1
SETB ET0
SETB ET1
SETB ES
SETB EA
CLR IE.7
MOV R0, #7FH
X1:
MOV @R0, #00H
DJNZ R0, X1
NOP
NOP
MOV SP, #60H
NOP
NOP
IN1:
MOV A, #00H
MOV R2, #8
MOV R1, #1
S1: LJMP INPUT1
S2: DJNZ R1, INPUT2
INPUT1: /取个位数/
MOV B, #02H
CLR P3.5
SETB P3.1
NOP
NOP
SETB P3.4
NOP
NOP
CLR P3.4
NOP
NOP
SETB P3.4
NOP
NOP
CLR P3.4
MOV A, B
MOV P3.0, ACC.1
NOP
NOP
SETB P3.4
NOP
NOP
CLR P3.4
MOV P3.0, ACC.0
CLR A
NOP
NOP
SETB P3.4
NOP
NOP
CLR P3.4
NOP
NOP
T1: SETB P3.4
NOP
NOP
CLR P3.4
NOP
NOP
MOV A, P3.0
RL A
DJNZ R2, T1
SETB P3.5
MOV R2, #8
MOV DPTR, #TABLE /查表/
MOVC A, @A+DPTR
CLR P1.0
CLR P1.1
SETB P3.7
MOV P1, A
INC R1
LJMP S2
INPUT2: 取十位数据
MOV B, #02H
CLR P3.5
SETB P3.1
NOP
NOP
SETB P3.4
NOP
NOP
CLR P3.4
NOP
NOP
SETB P3.4
NOP
NOP
CLR P3.4
MOV A, B
MOV P3.0, ACC.1
NOP
NOP
SETB P3.4
NOP
NOP
CLR P3.4
MOV P3.0, ACC.0
CLR A
NOP
NOP
SETB P3.4
NOP
NOP
CLR P3.4
NOP
NOP
T2: SETB P3.4
NOP
NOP
CLR P3.4
MOV A, P3.0
RL A
DJNZ R2, T2
SETB P3.5
MOV R2, #8
MOV DPTR, #TABLE /查表/
MOVC A, @A+DPTR
CLR P1.0
CLR P1.1
SETB P3.2
MOV P1, A
MOV R3, #0FFH
MOV R6, #0FFH
MOV R5, #0FFH
MOV R4, #0FFH
LCALL Z1
LCALL Y1
LCALL J1
LCALL Q1
INC R1
LJMP S1
TABLE:DB 3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H, 7FH, 6FH, 77H
Z1:
NOP 延时程序
NOP
NOP
NOP
DJNZ R5, Z1
RET
Y1: NOP
NOP
NOP
DJNZ R6, Y1
RET
Q1: NOP
NOP
NOP
DJNZ R4, Q1
RET
J1: NOP
NOP
NOP
NOP
DJNZ R3, J1
RET
ORG 0200H
EXT0: RETI
ORG 0220H
EXT1: RETI
ORG 0230H
INT0: RETI
ORG 0240H
INT1: RETI
ORG 0250H
SINT: RETI
END
小弟我刚接触单片机,请各位大哥看看程序有问题吗?谢谢