📄 main.ls1
字号:
A51 MACRO ASSEMBLER MAIN 05/21/2007 09:04:47 PAGE 1
MACRO ASSEMBLER A51 V8.00d
OBJECT MODULE PLACED IN main.OBJ
ASSEMBLER INVOKED BY: D:\Program Files\Keil 8.08\C51\BIN\A51.EXE main.src PR(.\main.ls1) EP DEBUG
LOC OBJ LINE SOURCE
1 ; .\main.SRC generated from: main.c
2 ; COMPILER INVOKED BY:
3 ; D:\Program Files\Keil 8.08\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND SRC(.\
main.SRC)
4
5 $nomod51
6
7 NAME MAIN
8
0080 9 P0 DATA 080H
0090 10 P1 DATA 090H
00A0 11 P2 DATA 0A0H
00B0 12 P3 DATA 0B0H
00B4 13 T0 BIT 0B0H.4
00D6 14 AC BIT 0D0H.6
00B5 15 T1 BIT 0B0H.5
00AF 16 EA BIT 0A8H.7
00A8 17 IE DATA 0A8H
00B7 18 RD BIT 0B0H.7
00AC 19 ES BIT 0A8H.4
00B8 20 IP DATA 0B8H
0098 21 RI BIT 098H.0
00B2 22 INT0 BIT 0B0H.2
00D7 23 CY BIT 0D0H.7
0099 24 TI BIT 098H.1
00B3 25 INT1 BIT 0B0H.3
00BC 26 PS BIT 0B8H.4
0081 27 SP DATA 081H
00D2 28 OV BIT 0D0H.2
00B6 29 WR BIT 0B0H.6
0099 30 SBUF DATA 099H
0087 31 PCON DATA 087H
0098 32 SCON DATA 098H
0089 33 TMOD DATA 089H
0088 34 TCON DATA 088H
00B3 35 P33 BIT 0B0H.3
0089 36 IE0 BIT 088H.1
008B 37 IE1 BIT 088H.3
00F0 38 B DATA 0F0H
00E0 39 ACC DATA 0E0H
00A9 40 ET0 BIT 0A8H.1
00AB 41 ET1 BIT 0A8H.3
008D 42 TF0 BIT 088H.5
008F 43 TF1 BIT 088H.7
009A 44 RB8 BIT 098H.2
008C 45 TH0 DATA 08CH
00A8 46 EX0 BIT 0A8H.0
0088 47 IT0 BIT 088H.0
008D 48 TH1 DATA 08DH
009B 49 TB8 BIT 098H.3
00AA 50 EX1 BIT 0A8H.2
008A 51 IT1 BIT 088H.2
00D0 52 P BIT 0D0H.0
009F 53 SM0 BIT 098H.7
008A 54 TL0 DATA 08AH
009E 55 SM1 BIT 098H.6
008B 56 TL1 DATA 08BH
009D 57 SM2 BIT 098H.5
A51 MACRO ASSEMBLER MAIN 05/21/2007 09:04:47 PAGE 2
00B9 58 PT0 BIT 0B8H.1
00BB 59 PT1 BIT 0B8H.3
00D3 60 RS0 BIT 0D0H.3
008C 61 TR0 BIT 088H.4
00D4 62 RS1 BIT 0D0H.4
008E 63 TR1 BIT 088H.6
00B8 64 PX0 BIT 0B8H.0
00BA 65 PX1 BIT 0B8H.2
00B1 66 CLK BIT 0B0H.1
00B0 67 DIN BIT 0B0H.0
0083 68 DPH DATA 083H
0082 69 DPL DATA 082H
009C 70 REN BIT 098H.4
00B0 71 RXD BIT 0B0H.0
00B1 72 TXD BIT 0B0H.1
00D5 73 F0 BIT 0D0H.5
00D0 74 PSW DATA 0D0H
75 ?PR?DELAY?MAIN SEGMENT CODE
76 ?DT?DELAY?MAIN SEGMENT DATA OVERLAYABLE
77 ?PR?DISP1?MAIN SEGMENT CODE
78 ?DT?DISP1?MAIN SEGMENT DATA OVERLAYABLE
79 ?PR?main?MAIN SEGMENT CODE
80 ?DT?main?MAIN SEGMENT DATA OVERLAYABLE
81 ?CO?MAIN SEGMENT CODE
82 ?DT?MAIN SEGMENT DATA
83 EXTRN CODE (?C_STARTUP)
84 PUBLIC DBUF0
85 PUBLIC TEMP
86 PUBLIC SEGTAB
87 PUBLIC main
88 PUBLIC DISP1
89 PUBLIC DELAY
90
---- 91 RSEG ?DT?main?MAIN
0000 92 ?main?BYTE:
0000 93 point?246: DS 1
0001 94 ORG 1
0001 95 x_point?247: DS 2
0003 96 ORG 3
0003 97 temp?248: DS 1
98
---- 99 RSEG ?DT?DISP1?MAIN
0000 100 ?DISP1?BYTE:
0000 101 num2?142: DS 1
102
---- 103 RSEG ?DT?DELAY?MAIN
0000 104 ?DELAY?BYTE:
0000 105 j?040: DS 1
106
---- 107 RSEG ?DT?MAIN
0000 108 TEMP: DS 4
0004 109 DBUF0: DS 4
110
---- 111 RSEG ?CO?MAIN
0000 112 SEGTAB:
0000 3F 113 DB 03FH
0001 06 114 DB 006H
0002 5B 115 DB 05BH
0003 4F 116 DB 04FH
0004 66 117 DB 066H
0005 6D 118 DB 06DH
0006 7D 119 DB 07DH
0007 07 120 DB 007H
0008 7F 121 DB 07FH
0009 6F 122 DB 06FH
000A 77 123 DB 077H
A51 MACRO ASSEMBLER MAIN 05/21/2007 09:04:47 PAGE 3
000B 7C 124 DB 07CH
000C 58 125 DB 058H
000D 5E 126 DB 05EH
000E 79 127 DB 079H
000F 71 128 DB 071H
0010 00 129 DB 000H
0011 40 130 DB 040H
131
132 ; #include <reg51.h>
133 ; #include <intrins.h>
134 ; typedef unsigned char BYTE;
135 ;
136 ; BYTE DBUF0[4];
137 ; BYTE TEMP[4];
138 ;
139 ; sbit DIN=P3^0;
140 ; sbit CLK=P3^1;
141 ; sbit P33=P3^3;
142 ;
143 ; BYTE code SEGTAB[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,
144 ; 0x7D,0x07,0x7F,0x6F,0x77,0x7C,
145 ; 0x58,0x5E,0x79,0x71,0x00,0x40};
146 ;
147 ;
148 ; void DELAY()
149
---- 150 RSEG ?PR?DELAY?MAIN
0000 151 DELAY:
152 USING 0
153 ; SOURCE LINE # 17
154 ; {
155 ; SOURCE LINE # 18
156 ; BYTE i=0xAF;
157 ; SOURCE LINE # 19
158 ;---- Variable 'i?041' assigned to Register 'R7' ----
0000 7FAF 159 MOV R7,#0AFH
0002 160 ?C0003:
161 ;
162 ; do
163 ; {
164 ; SOURCE LINE # 22
165 ; BYTE j=0xFF;
166 ; SOURCE LINE # 23
0002 7500FF F 167 MOV j?040,#0FFH
0005 168 ?C0006:
169 ; do
170 ; {
171 ; SOURCE LINE # 25
172 ; _nop_();
173 ; SOURCE LINE # 26
0005 00 174 NOP
175 ; _nop_();
176 ; SOURCE LINE # 27
0006 00 177 NOP
178 ; _nop_();
179 ; SOURCE LINE # 28
0007 00 180 NOP
181 ; }while(--j);
182 ; SOURCE LINE # 29
0008 D500FA F 183 DJNZ j?040,?C0006
184 ; }while(--i);
185 ; SOURCE LINE # 30
000B DFF5 186 DJNZ R7,?C0003
187 ; }
188 ; SOURCE LINE # 31
000D 22 189 RET
A51 MACRO ASSEMBLER MAIN 05/21/2007 09:04:47 PAGE 4
190 ; END OF DELAY
191
192 ;
193 ; void DISP1()
194
---- 195 RSEG ?PR?DISP1?MAIN
0000 196 DISP1:
197 USING 0
198 ; SOURCE LINE # 33
199 ; {
200 ; SOURCE LINE # 34
201 ; BYTE data *p=DBUF0;
202 ; SOURCE LINE # 35
0000 7F00 F 203 MOV R7,#LOW (DBUF0)
204 ;---- Variable 'p?143' assigned to Register 'R7' ----
205 ; BYTE data *q=TEMP+4;
206 ; SOURCE LINE # 36
0002 7E00 F 207 MOV R6,#LOW (TEMP+04H)
208 ;---- Variable 'q?144' assigned to Register 'R6' ----
209 ; BYTE num=5;
210 ; SOURCE LINE # 37
211 ;---- Variable 'num?145' assigned to Register 'R5' ----
0004 7D05 212 MOV R5,#05H
0006 213 ?C0010:
214 ;
215 ; do
216 ; {
217 ; SOURCE LINE # 40
218 ; *q=SEGTAB[*p];
219 ; SOURCE LINE # 41
0006 A807 220 MOV R0,AR7
0008 E6 221 MOV A,@R0
0009 900000 F 222 MOV DPTR,#SEGTAB
000C 93 223 MOVC A,@A+DPTR
000D A806 224 MOV R0,AR6
000F F6 225 MOV @R0,A
226 ; p++;
227 ; SOURCE LINE # 42
0010 0F 228 INC R7
229 ; q--;
230 ; SOURCE LINE # 43
0011 1E 231 DEC R6
232 ; }while(--num);
233 ; SOURCE LINE # 44
0012 DDF2 234 DJNZ R5,?C0010
235 ;
236 ; p=TEMP;
237 ; SOURCE LINE # 46
0014 7F00 F 238 MOV R7,#LOW (TEMP)
239 ; num=5;
240 ; SOURCE LINE # 47
0016 7D05 241 MOV R5,#05H
0018 242 ?C0013:
243 ;
244 ; do
245 ; {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -