📄 xuexil.lst
字号:
HI-TECH Software PICC Macro Assembler V9.50PL2
Sat Nov 08 08:27:36 2008
1 processor 16F884
2 0000 indf equ 0
3 0000 rtcc equ 1
4 0000 pc equ 2
5 0000 pcl equ 2
6 0000 status equ 3
7 0000 fsr equ 4
8 0000 porta equ 5
9 0000 portb equ 6
10 0000 portc equ 7
11 0000 pclath equ 10
12 global _main
13 signat _main,88
14 psect text0,local,class=CODE,delta=2
15 psect text0
16 file "E:\16F884\XUEXIL.C"
17 line 4
18
19 0798 _main
20 global _BIN_BCD_COVERT
21 signat _BIN_BCD_COVERT,4216
22 global ?_BIN_BCD_COVERT
23 FNCALL _main,_BIN_BCD_COVERT
24 ; _k assigned to ?a_main+0
25 0000 _main$k set ?a_main+0
26 ;XUEXIL.C: 3: void main(void)
27 line 6
28 0798 1283 bcf status,5
29 0799 1303 bcf status,6 ;carry unused
30 079A 0824 movf (((?a_main+0))),w
31 079B 00A6 movwf (((?_BIN_BCD_COVERT)))
32 079C 0825 movf (((?a_main+0+1))),w
33 079D 00A7 movwf (((?_BIN_BCD_COVERT+1)))
34
35 079E 118A 27A5 118A fcall (_BIN_BCD_COVERT)
36 line 7
37
38 07A1 l3
39 ;XUEXIL.C: 7: while(1);
40
41 07A1 l2
42 07A1 2FA1 goto l2
43 07A2 0183 clrf status
44 global start
45 07A3 118A 2800 ljmp start
46 FNSIZE _main,2,0
47 global ?a_main
48 ; param _data assigned to ?_BIN_BCD_COVER
T+0
49 0000 _BIN_BCD_COVERT$data set ?_BIN_BCD_COVERT+0
50 psect text1,local,class=CODE,delta=2
51 psect text1
52 line 12
53
54 07A5 _BIN_BCD_COVERT
55 global _BCD_DATA
56 ;XUEXIL.C: 11: void BIN_BCD_COVERT(unsigned int
data)
57 line 13
58 07A5 2FAD goto l6
59
60 07A6 l7
61 ;XUEXIL.C: 14: {BCD_DATA[3]++;data-=1000;}
62 line 14
63 07A6 0AA3 incf ((0+(_BCD_DATA+3)))
64 07A7 3018 movlw 018h
65 07A8 07A6 addwf (((?_BIN_BCD_COVERT+0)))
66 07A9 1803 btfsc status,0
67 07AA 0AA7 incf (((?_BIN_BCD_COVERT+0+1)))
68 07AB 30FC movlw 0FCh
69 07AC 07A7 addwf (((?_BIN_BCD_COVERT+0+1)))
70
71 07AD l6
72 line 13
73 07AD 1283 bcf status,5
74 07AE 1303 bcf status,6 ;carry unused
75 07AF 0827 movf (((?_BIN_BCD_COVERT+0+1))),w
76 07B0 00F1 movwf btemp+1
77 07B1 0826 movf (((?_BIN_BCD_COVERT+0))),w
78 07B2 00F0 movwf btemp
79 07B3 3018 movlw 018h
80 07B4 07F0 addwf btemp
81 07B5 1803 btfsc status,0
82 07B6 0AF1 incf btemp+1
83 07B7 30FC movlw 0FCh
84 07B8 07F1 addwf btemp+1
85 07B9 0871 movf btemp+1,w
86 07BA 3A80 xorlw 80h
87 07BB 00F2 movwf btemp+2
88 07BC 3080 movlw (0)^80h
89 07BD 0272 subwf btemp+2,w
90 07BE 3001 movlw 01h
91 ;set bank bits btemp
92 07BF 1903 btfsc status,2
93 07C0 0270 subwf btemp,w
94 07C1 1803 btfsc status,0
95 07C2 2FC4 goto u11
96 07C3 2FC5 goto u10
97 07C4 u11
98 07C4 2FA6 goto l7
99 07C5 u10
100
101 07C5 l8
102 ;XUEXIL.C: 15: while((int) (data-100)>0)
103 line 15
104 07C5 2FCB goto l9
105
106 07C6 l10
107 ;XUEXIL.C: 16: {BCD_DATA[2]++;data-=100;}
108 line 16
109 07C6 0AA2 incf ((0+(_BCD_DATA+2)))
110 07C7 309C movlw -100
111 07C8 07A6 addwf (((?_BIN_BCD_COVERT+0)))
112 07C9 1C03 btfss status,0
113 07CA 03A7 decf (((?_BIN_BCD_COVERT+0+1)))
114
115 07CB l9
116 line 15
117 07CB 0827 movf (((?_BIN_BCD_COVERT+0+1))),w
118 07CC 00F1 movwf btemp+1
119 07CD 0826 movf (((?_BIN_BCD_COVERT+0))),w
120 07CE 00F0 movwf btemp
121 07CF 309C movlw 09Ch
122 07D0 07F0 addwf btemp
123 07D1 1803 btfsc status,0
124 07D2 0AF1 incf btemp+1
125 07D3 30FF movlw 0FFh
126 07D4 07F1 addwf btemp+1
127 07D5 0871 movf btemp+1,w
128 07D6 3A80 xorlw 80h
129 07D7 00F2 movwf btemp+2
130 07D8 3080 movlw (0)^80h
131 07D9 0272 subwf btemp+2,w
132 07DA 3001 movlw 01h
133 ;set bank bits btemp
134 07DB 1903 btfsc status,2
135 07DC 0270 subwf btemp,w
136 07DD 1803 btfsc status,0
137 07DE 2FE0 goto u21
138 07DF 2FE1 goto u20
139 07E0 u21
140 07E0 2FC6 goto l10
141 07E1 u20
142
143 07E1 l11
144 ;XUEXIL.C: 17: while((int) (data-10)>0)
145 line 17
146 07E1 2FE7 goto l12
147
148 07E2 l13
149 ;XUEXIL.C: 18: {BCD_DATA[1]++;data-=10;}
150 line 18
151 07E2 0AA1 incf ((0+(_BCD_DATA+1)))
152 07E3 30F6 movlw -10
153+ 07E4 07A6 addwf (((?_BIN_BCD_COVERT+0)))
154+ 07E5 1C03 btfss status,0
155+ 07E6 03A7 decf (((?_BIN_BCD_COVERT+0+1)))
156
157 07E7 l12
158+ line 17
159+ 07E7 0827 movf (((?_BIN_BCD_COVERT+0+1))),w
160+ 07E8 00F1 movwf btemp+1
161 07E9 0826 movf (((?_BIN_BCD_COVERT+0))),w
162 07EA 00F0 movwf btemp
163 07EB 30F6 movlw 0F6h
164 07EC 07F0 addwf btemp
165 07ED 1803 btfsc status,0
166 07EE 0AF1 incf btemp+1
167 07EF 30FF movlw 0FFh
168 07F0 07F1 addwf btemp+1
169 07F1 0871 movf btemp+1,w
170 07F2 3A80 xorlw 80h
171 07F3 00F2 movwf btemp+2
172 07F4 3080 movlw (0)^80h
173+ 07F5 0272 subwf btemp+2,w
174+ 07F6 3001 movlw 01h
175+ ;set bank bits btemp
176+ 07F7 1903 btfsc status,2
177+ 07F8 0270 subwf btemp,w
178+ 07F9 1803 btfsc status,0
179+ 07FA 2FFC goto u31
180+ 07FB 2FFD goto u30
181+ 07FC u31
182+ 07FC 2FE2 goto l13
183+ 07FD u30
184+
185+ 07FD l14
186+ ;XUEXIL.C: 19: BCD_DATA[0]=data;
187+ line 19
188+ 07FD 0826 movf (((?_BIN_BCD_COVERT+0))),w
189+
190+ 07FE 00A0 movwf (((_BCD_DATA)))
191+ ;XUEXIL.C: 21: }
192+ line 21
193+ 07FF l5
194+ 07FF 0008 return ;W free
195+ FNSIZE _BIN_BCD_COVERT,0,2
196+ global ?_BIN_BCD_COVERT
197+ psect rbss_0,class=BANK0,space=1
198+ psect rbss_0
199+ 0020 _BCD_DATA
200+ 0020 ds 4
201+ psect temp,ovrld,class=BANK0,space=1
202+ 0070 btemp
203+ 0070 ds 3
HI-TECH Software PICC Macro Assembler V9.50PL2
Symbol Table Sat Nov 08 08:27:36 2008
?a_main 0024 l2 07A1
l3 07A1 l5 07FF
l6 07AD l7 07A6
l8 07C5 l9 07CB
l10 07C6 l11 07E1
l12 07E7 l13 07E2
l14 07FD u10 07C5
u11 07C4 u20 07E1
u21 07E0 u30 07FD
u31 07FC _BIN_BCD_COVERT 07A5
_BCD_DATA 0020 _main 0798
btemp 0070 start 0000
?_BIN_BCD_COVERT 0026 status 0003
used_btemp0 0001 used_btemp1 0001
used_btemp2 0001
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -