📄 4位8段数显十进制加计数器.lst
字号:
A51 MACRO ASSEMBLER 4位8段数蟔蔩絖制加计数芲 11/11/2007 22:24:10 PAGE 1
MACRO ASSEMBLER A51 V8.00
OBJECT MODULE PLACED IN 4位8段数显十进制加计数器.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE 4位8段数显十进制加计数器.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
0000 1 ORG 0000H
0000 020200 2 LJMP STAR0 ;转程序 SRAR0
0200 3 ORG 0200H ;程序地址 0200H
0200 C200 4 STAR0: CLR 00 ;位 00 清 0
0202 7590FF 5 MOV P1,#0FFH ;#0FFH-->P1
0205 75A00F 6 MOV P2,#0FH ;#0FH-->P2
0208 7580FF 7 MOV P0,#0FFH ;#0FFH-->P0
020B 753000 8 MOV 30H,#00H ;#00H-->30H
020E 753100 9 MOV 31H,#00H ;#00H-->30H
0211 753200 10 MOV 32H,#00H ;#00H-->30H
0214 753300 11 MOV 33H,#00H ;#00H-->30H
0217 020246 12 LJMP STAR3 ;转程序 SRAR3
021A 740A 13 STAR2: MOV A,#0AH ;#0AH-->A
021C 0530 14 INC 30H ;30H+1
021E B53024 15 CJNE A,30H,STJE ;30H 与 A 比较,不等转移 STJE
0221 753000 16 MOV 30H,#00H ;#00H-->30H
0224 0531 17 INC 31H ;31H+1
0226 B5311C 18 CJNE A,31H,STJE ;31H 与 A 比较,不等转移 STJE
0229 753100 19 MOV 31H,#00H ;#00H-->31H
022C 0532 20 INC 32H ;32H+1
022E B53214 21 CJNE A,32H,STJE ;32H 与 A 比较,不等转移 STJE
0231 753200 22 MOV 32H,#00H ;#00H-->32H
0234 0533 23 INC 33H ;33H+1
0236 B5330C 24 CJNE A,33H,STJE ;33H 与 A 比较,不等转移 STJE
0239 753300 25 MOV 33H,#00H ;#00H-->33H
023C 753200 26 MOV 32H,#00H ;#00H-->32H
023F 753100 27 MOV 31H,#00H ;#00H-->31H
0242 753000 28 MOV 30H,#00H ;#00H-->30H
0245 22 29 STJE: RET ;子程序调用返回
0246 7830 30 STAR3: MOV R0,#30H ;#30H-->R0
0248 7EF7 31 MOV R6,#0F7H ;#0F7H-->R6
024A 7590FF 32 SMG0: MOV P1,#0FFH ;#0FFH-->P1
024D EE 33 MOV A,R6 ;R6-->A
024E F590 34 MOV P1,A ;A-->P1
0250 03 35 RR A ;A向右移一位
0251 FE 36 MOV R6,A ;A-->R6
0252 E6 37 MOV A,@R0 ;@R0-->A
0253 2404 38 ADD A,#04H ;#04H-->A
0255 83 39 MOVC A,@A+PC ;A+PC-->
0256 F580 40 MOV P0,A ;A-->P0
0258 4164 41 AJMP SMG1 ;转程序 SMG1
025A C0F9A4B0 42 SDATA: DB 0C0H,0F9H,0A4H,0B0H,99H
025E 99
025F 9282F880 43 DB 92H,82H,0F8H,80H,90H
0263 90
0264 120270 44 SMG1: LCALL STAR4 ;转子程序 SRAR4
0267 120100 45 LCALL STS00 ;转子程序 STS00
026A 08 46 INC R0 ;R0+1
026B BE7FDC 47 CJNE R6,#07FH,SMG0 ;#07FH 与 R6 比较,不等转移 SMG0
026E 4146 48 AJMP STAR3 ;转程序 SRAR3
0270 30A004 49 STAR4: JNB P2.0,ST1 ;P2.0=0 转 ST1
0273 C200 50 CLR 00 ;位 00 清 0
0275 800A 51 SJMP ST3 ;转ST3
0277 300002 52 ST1: JNB 00,ST2 ;位 00=0 转 ST2
027A 8005 53 SJMP ST3 ;转 ST3
027C 12021A 54 ST2: LCALL STAR2 ;调子程序 STAR2
027F D200 55 SETB 00 ;位 00 置 1
0281 22 56 ST3: RET ;子程序调用返回
A51 MACRO ASSEMBLER 4位8段数蟔蔩絖制加计数芲 11/11/2007 22:24:10 PAGE 2
0100 57 ORG 0100H ;地址 0100H
0100 756003 58 STS00: MOV 60H,#003H ;#003H-->60H (211)
0103 7561FF 59 DE001: MOV 61H,#0FFH ;#0FFH-->61H (255)
0106 D561FD 60 DE002: DJNZ 61H,DE002 ;61H 减 1 不等于 0 转 DE002
0109 D560F7 61 DJNZ 60H,DE001 ;60H 减 1 不等于 0 转 DE001
010C 22 62 RET ;子程序调用返回
63 END ;结束
A51 MACRO ASSEMBLER 4位8段数蟔蔩絖制加计数芲 11/11/2007 22:24:10 PAGE 3
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
DE001. . . . . . . C ADDR 0103H A
DE002. . . . . . . C ADDR 0106H A
P0 . . . . . . . . D ADDR 0080H A
P1 . . . . . . . . D ADDR 0090H A
P2 . . . . . . . . D ADDR 00A0H A
SDATA. . . . . . . C ADDR 025AH A
SMG0 . . . . . . . C ADDR 024AH A
SMG1 . . . . . . . C ADDR 0264H A
ST1. . . . . . . . C ADDR 0277H A
ST2. . . . . . . . C ADDR 027CH A
ST3. . . . . . . . C ADDR 0281H A
STAR0. . . . . . . C ADDR 0200H A
STAR2. . . . . . . C ADDR 021AH A
STAR3. . . . . . . C ADDR 0246H A
STAR4. . . . . . . C ADDR 0270H A
STJE . . . . . . . C ADDR 0245H A
STS00. . . . . . . C ADDR 0100H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -