📄 lesson3.lst
字号:
HI-TECH Software PICC Macro Assembler V8.05PL1
Serial number: HCPIC-65018 Sat Apr 4 20:29:47 2009
Licensed to: ONE
1 processor 16F877A
2 opt pw 79
3 psect __Z65018RS_,global,delta=1
4 psect rdata_0,global,class=BANK0,space=1,delta
+ =1
5 psect idata_0,global,class=CODE,delta=2
6 psect text3,local,class=CODE,delta=2
7 psect text5,local,class=CODE,delta=2
8 psect rbss_0,global,class=BANK0,space=1,delta=
+ 1
9 0000
10 0000
11 0000
12 0000
13 0000
14 0000
15 0000
16 0000
17 0000
18 0000
19
20 psect __Z65018RS_
21 0190
22 0190
23
24 psect rdata_0
25 0027 _table
26 0027 ds 1
27 0028 ds 1
28 0029 ds 1
29 002A ds 1
30 002B ds 1
31 002C ds 1
32 002D ds 1
33 002E ds 1
34 002F ds 1
35 0030 ds 1
36 0031 ds 1
37 0032 ds 1
38 0033 ds 1
39 0034 ds 1
40 0035 ds 1
41 0036 ds 1
42 0037 _table_we
43 0037 ds 1
44 0038 ds 1
45 0039 ds 1
46 003A ds 1
47 003B ds 1
48 003C ds 1
49 0000 _delay$z set ?_delay
50
51 psect idata_0
52 07EA 3440 retlw 64
53 07EB 34F9 retlw -7
54 07EC 34A4 retlw -92
55 07ED 34B0 retlw -80
56 07EE 3419 retlw 25
57 07EF 3412 retlw 18
58 07F0 3403 retlw 3
59 07F1 34F8 retlw -8
60 07F2 3400 retlw 0
61 07F3 3410 retlw 16
62 07F4 3408 retlw 8
63 07F5 3403 retlw 3
64 07F6 3446 retlw 70
65 07F7 3421 retlw 33
66 07F8 3406 retlw 6
67 07F9 340E retlw 14
68 07FA 3401 retlw 1
69 07FB 3402 retlw 2
70 07FC 3404 retlw 4
71 07FD 3408 retlw 8
72 07FE 3410 retlw 16
73 07FF 3420 retlw 32
74
75 psect text3
76 ;lesson3.c: 88: void display()
77 ;lesson3.c: 89: {
78 06F6 _display
79 ;lesson3.c: 90: switch(temp)
80 06F6 2F27 goto l23
81 06F7 l24
82 ;lesson3.c: 91: {
83 06F7 0827 movf _table,w
84 06F8 0088 movwf 8 ;volatile
85 06F9 0008 return
86 06FA l25
87 ;lesson3.c: 93: case 0xed:PORTD=table[1];break;
88 06FA 0828 movf _table+1,w
89 06FB 0088 movwf 8 ;volatile
90 06FC 0008 return
91 06FD l26
92 ;lesson3.c: 94: case 0xeb:PORTD=table[2];break;
93 06FD 0829 movf _table+2,w
94 06FE 0088 movwf 8 ;volatile
95 06FF 0008 return
96 0700 l27
97 ;lesson3.c: 95: case 0xe7:PORTD=table[3];break;
98 0700 082A movf _table+3,w
99 0701 0088 movwf 8 ;volatile
100 0702 0008 return
101 0703 l28
102 ;lesson3.c: 96: case 0xde:PORTD=table[4];break;
103 0703 082B movf _table+4,w
104 0704 0088 movwf 8 ;volatile
105 0705 0008 return
106 0706 l29
107 ;lesson3.c: 97: case 0xdd:PORTD=table[5];break;
108 0706 082C movf _table+5,w
109 0707 0088 movwf 8 ;volatile
110 0708 0008 return
111 0709 l30
112 ;lesson3.c: 98: case 0xdb:PORTD=table[6];break;
113 0709 082D movf _table+6,w
114 070A 0088 movwf 8 ;volatile
115 070B 0008 return
116 070C l31
117 ;lesson3.c: 99: case 0xd7:PORTD=table[7];break;
118 070C 082E movf _table+7,w
119 070D 0088 movwf 8 ;volatile
120 070E 0008 return
121 070F l32
122 ;lesson3.c: 100: case 0xbe:PORTD=table[8];break
+ ;
123 070F 082F movf _table+8,w
124 0710 0088 movwf 8 ;volatile
125 0711 0008 return
126 0712 l33
127 ;lesson3.c: 101: case 0xbd:PORTD=table[9];break
+ ;
128 0712 0830 movf _table+9,w
129 0713 0088 movwf 8 ;volatile
130 0714 0008 return
131 0715 l34
132 ;lesson3.c: 102: case 0xbb:PORTD=table[10];brea
+ k;
133 0715 0831 movf _table+10,w
134 0716 0088 movwf 8 ;volatile
135 0717 0008 return
136 0718 l35
137 ;lesson3.c: 103: case 0xb7:PORTD=table[11];brea
+ k;
138 0718 0832 movf _table+11,w
139 0719 0088 movwf 8 ;volatile
140 071A 0008 return
141 071B l36
142 ;lesson3.c: 104: case 0x7e:PORTD=table[12];brea
+ k;
143 071B 0833 movf _table+12,w
144 071C 0088 movwf 8 ;volatile
145 071D 0008 return
146 071E l37
147 ;lesson3.c: 105: case 0x7d:PORTD=table[13];brea
+ k;
148 071E 0834 movf _table+13,w
149 071F 0088 movwf 8 ;volatile
150 0720 0008 return
151 0721 l38
152 ;lesson3.c: 106: case 0x7b:PORTD=table[14];brea
+ k;
153 0721 0835 movf _table+14,w
154 0722 0088 movwf 8 ;volatile
155 0723 0008 return
156 0724 l39
157 ;lesson3.c: 107: case 0x77:PORTD=table[15];brea
+ k;
158 0724 0836 movf _table+15,w
159 0725 0088 movwf 8 ;volatile
160 0726 0008 return
161 0727 l23
162 0727 1283 bcf 3,5
163 0728 1303 bcf 3,6 ;carry unused
164 0729 0820 movf _temp,w
165 072A 3A77 xorlw 119
166 072B 1903 btfsc 3,2
167 072C 2F24 goto l39
168 072D 3A0C xorlw 12
169 072E 1903 btfsc 3,2
170 072F 2F21 goto l38
171 0730 3A06 xorlw 6
172 0731 1903 btfsc 3,2
173 0732 2F1E goto l37
174 0733 3A03 xorlw 3
175 0734 1903 btfsc 3,2
176 0735 2F1B goto l36
177 0736 3AC9 xorlw 201
178 0737 1903 btfsc 3,2
179 0738 2F18 goto l35
180 0739 3A0C xorlw 12
181 073A 1903 btfsc 3,2
182 073B 2F15 goto l34
183 073C 3A06 xorlw 6
184 073D 1903 btfsc 3,2
185 073E 2F12 goto l33
186 073F 3A03 xorlw 3
187 0740 1903 btfsc 3,2
188 0741 2F0F goto l32
189 0742 3A69 xorlw 105
190 0743 1903 btfsc 3,2
191 0744 2F0C goto l31
192 0745 3A0C xorlw 12
193 0746 1903 btfsc 3,2
194 0747 2F09 goto l30
195 0748 3A06 xorlw 6
196 0749 1903 btfsc 3,2
197 074A 2F06 goto l29
198 074B 3A03 xorlw 3
199 074C 1903 btfsc 3,2
200 074D 2F03 goto l28
201 074E 3A39 xorlw 57
202 074F 1903 btfsc 3,2
203 0750 2F00 goto l27
204 0751 3A0C xorlw 12
205 0752 1903 btfsc 3,2
206 0753 2EFD goto l26
207 0754 3A06 xorlw 6
208 0755 1903 btfsc 3,2
209 0756 2EFA goto l25
210 0757 3A03 xorlw 3
211 0758 1D03 btfss 3,2
212 0759 0008 return
213 075A 2EF7 goto l24
214 075B _delay
215 ; _y assigned to ?a_delay+0
216 0000 _delay$y set ?a_delay
217 ; _x assigned to ?a_delay+2
218 0000 _delay$x set ?a_delay+2
219 ;lesson3.c: 11: unsigned int x,y;
220 075B 0183 clrf 3 ;select bank 0
221 075C 0821 movf ?_delay,w
222 075D 00A5 movwf ?a_delay+2
223 075E 0822 movf ?_delay+1,w
224 075F 00A6 movwf ?a_delay+3
225 0760 0425 iorwf ?a_delay+2,w
226 0761 1903 btfsc 3,2
227 0762 0008 return
228 0763 l2
229 ;lesson3.c: 13: for(y=110;y>0;y--);
230 0763 306E movlw 110
231 0764 00A3 movwf ?a_delay
232 0765 01A4 clrf ?a_delay+1
233 0766 l5
234 0766 08A3 movf ?a_delay
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -