📄 birthday.lst
字号:
A51 MACRO ASSEMBLER BIRTHDAY 08/05/2007 16:36:44 PAGE 1
MACRO ASSEMBLER A51 V7.10
OBJECT MODULE PLACED IN birthday.OBJ
ASSEMBLER INVOKED BY: D:\Keil\C51\BIN\A51.EXE birthday.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
1 ;相关知识内容请参阅S51E 文档内容--音乐应用实验。
0020 2 numtim equ 20h
0021 3 gewei equ 21h
0022 4 shiwei equ 22h
0023 5 scanled equ 23h
0000 6 org 000h
0000 2100 7 jmp start
000B 8 org 00bh
000B 2144 9 jmp tim0
0100 10 org 100h
0100 758901 11 start: mov tmod,#00000001b
0103 75A882 12 mov ie,#10000010b
0106 752001 13 mov numtim,#01h
0109 753000 14 start0:mov 30h,#00h
15
010C E530 16 next:mov a,30h
010E 900182 17 mov dptr,#table
0111 93 18 movc a,@a+dptr
0112 FA 19 mov r2,a
0113 602B 20 jz end0
0115 540F 21 anl a,#0fh
0117 FD 22 mov r5,a
0118 EA 23 mov a,r2
0119 C4 24 swap a
011A 540F 25 anl a,#0fh
011C 7004 26 jnz sing
011E C28C 27 clr tr0
0120 8017 28 jmp d1
0122 14 29 sing: dec a
0123 F522 30 mov 22h,a
0125 23 31 rl a
0126 900164 32 mov dptr,#table1
0129 93 33 movc a,@a+dptr
012A F58C 34 mov th0,a
012C F521 35 mov 21h,a
012E E522 36 mov a,22h
0130 23 37 rl a
0131 04 38 inc a
0132 93 39 movc a,@a+dptr
0133 F58A 40 mov tl0,a
0135 F520 41 mov 20h,a
0137 D28C 42 setb tr0
0139 120155 43 d1:lcall delay
013C 0530 44 inc 30h
013E 80CC 45 jmp next
0140 C28C 46 end0:clr tr0
0142 80C5 47 jmp start0
0144 C0E0 48 tim0:push acc
0146 C0D0 49 push psw
0148 85208A 50 mov tl0,20h
014B 85218C 51 mov th0,21h
014E B287 52 cpl p0.7
0150 D0D0 53 pop psw
0152 D0E0 54 pop acc
0154 32 55 reti
56
57
58
A51 MACRO ASSEMBLER BIRTHDAY 08/05/2007 16:36:44 PAGE 2
0155 7F02 59 delay: mov r7,#02h
0157 7CBB 60 d2: mov r4,#187
0159 7BF8 61 d3: mov r3,#248
015B DBFE 62 djnz r3,$
015D DCFA 63 djnz r4,d3
015F DFF6 64 djnz r7,d2
0161 DDF2 65 djnz r5,delay
0163 22 66 ret
0164 67 table1:
0164 FB04 68 dw 64260,64400,64524,64580
0166 FB90
0168 FC0C
016A FC44
016C FCAC 69 dw 64684,64777,64820,64898
016E FD09
0170 FD34
0172 FD82
0174 FDC8 70 dw 64968,65030,65058,65110
0176 FE06
0178 FE22
017A FE56
017C FE85 71 dw 65157,65178,65217
017E FE9A
0180 FEC1
0182 82018194 72 table:db 82h,01h,81h,94h,84h
0186 84
0187 B4A404 73 db 0b4h,0a4h,04h
018A 82018194 74 db 82h,01h,81h,94h,84h
018E 84
018F C4B404 75 db 0c4h,0b4h,04h
76
0192 820181F4 77 db 82h,01h,81h,0f4h,0d4h
0196 D4
0197 B4A494 78 db 0b4h,0a4h,94h
019A E201E1D4 79 db 0e2h,01h,0e1h,0d4h,0b4h
019E B4
019F C4B404 80 db 0c4h,0b4h,04h
81
01A2 82018194 82 db 82h,01h,81h,94h,84h
01A6 84
01A7 B4A404 83 db 0b4h,0a4h,04h
01AA 82018194 84 db 82h,01h,81h,94h,84h
01AE 84
01AF C4B404 85 db 0c4h,0b4h,04h
86
01B2 820181F4 87 db 82h,01h,81h,0f4h,0d4h
01B6 D4
01B7 B4A494 88 db 0b4h,0a4h,94h
01BA E201E1D4 89 db 0e2h,01h,0e1h,0d4h,0b4h
01BE B4
01BF C4B404 90 db 0c4h,0b4h,04h
01C2 00 91 db 00
92
01C3 C0F9A4B0 93 TABLE2:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
01C7 999282F8
01CB 8090
94 end
A51 MACRO ASSEMBLER BIRTHDAY 08/05/2007 16:36:44 PAGE 3
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
ACC. . . . . . . . D ADDR 00E0H A
D1 . . . . . . . . C ADDR 0139H A
D2 . . . . . . . . C ADDR 0157H A
D3 . . . . . . . . C ADDR 0159H A
DELAY. . . . . . . C ADDR 0155H A
END0 . . . . . . . C ADDR 0140H A
GEWEI. . . . . . . N NUMB 0021H A
IE . . . . . . . . D ADDR 00A8H A
NEXT . . . . . . . C ADDR 010CH A
NUMTIM . . . . . . N NUMB 0020H A
P0 . . . . . . . . D ADDR 0080H A
PSW. . . . . . . . D ADDR 00D0H A
SCANLED. . . . . . N NUMB 0023H A
SHIWEI . . . . . . N NUMB 0022H A
SING . . . . . . . C ADDR 0122H A
START. . . . . . . C ADDR 0100H A
START0 . . . . . . C ADDR 0109H A
TABLE. . . . . . . C ADDR 0182H A
TABLE1 . . . . . . C ADDR 0164H A
TABLE2 . . . . . . C ADDR 01C3H A
TH0. . . . . . . . D ADDR 008CH A
TIM0 . . . . . . . C ADDR 0144H A
TL0. . . . . . . . D ADDR 008AH A
TMOD . . . . . . . D ADDR 0089H A
TR0. . . . . . . . B ADDR 0088H.4 A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -