📄 ex10-1.lst
字号:
272: 02C0 92 95 mov P1.5,C
273: 02C2 C3 clr C
274: 02C3 92 95 mov P1.5,C
275: 02C5 51 93 call DELAY_5ms
276: 02C7 D3 setb C
277: 02C8 92 95 mov P1.5,C
278: 02CA 09 inc r1
279: 02CB E7 mov A,@r1 ;写第三位数码管
280: 02CC F0 movx @DPTR,A
281: 02CD D3 setb C
282: 02CE 92 96 mov P1.6,C
283: 02D0 C3 clr C
284: 02D1 92 96 mov P1.6,C
285: 02D3 51 93 call DELAY_5ms
286: 02D5 D3 setb C
287: 02D6 92 96 mov P1.6,C
288: 02D8 09 inc r1
289: 02D9 E7 mov A,@r1 ;写第四位数码管
290: 02DA F0 movx @DPTR,A
291: 02DB D3 setb C
292: 02DC 92 97 mov P1.7,C
293: 02DE C3 clr C
294: 02DF 92 97 mov P1.7,C
295: 02E1 51 93 call DELAY_5ms
296: 02E3 D3 setb C
297: 02E4 92 97 mov P1.7,C
298: 02E6 22 ret
299:
300:
301: ;双字节二进制无符号数乘法
302: ;被乘数在R2(高位)、R3(低位)中,乘数在R6(高位)、R7(低位)中。
303: ;乘积在R2(高位)、R3、R4、R5(低位)中。
304: ;用到累加器A,B,PSW,R2~R7。
305: ;永远不会产生进位。
306: ;在出口时总是清除C。
307: ;若结果超出2个字节范围则OV=1。
308: 02E7 MULD2:
309: 02E7 EB MOV A,R3
310: 02E8 8F F0 MOV B,R7
311: 02EA A4 MUL AB
312: 02EB AC F0 MOV R4,B
313: 02ED FD MOV R5,A
314: 02EE EB MOV A,R3
315: 02EF 8E F0 MOV B,R6
316: 02F1 A4 MUL AB
317: 02F2 2C ADD A,R4
318: 02F3 FC MOV R4,A
319: 02F4 E4 CLR A
320: 02F5 35 F0 ADDC A,B
321: 02F7 FB MOV R3,A
322: 02F8 EA MOV A,R2
323: 02F9 8F F0 MOV B,R7
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 7
Line I Addr Code Source
324: 02FB A4 MUL AB
325: 02FC 2C ADD A,R4
326: 02FD FC MOV R4,A
327: 02FE EB MOV A,R3
328: 02FF 35 F0 ADDC A,B
329: 0301 FB MOV R3,A
330: 0302 E4 CLR A
331: 0303 33 RLC A
332: 0304 CA XCH A,R2
333: 0305 8E F0 MOV B,R6
334: 0307 A4 MUL AB
335: 0308 2B ADD A,R3
336: 0309 FB MOV R3,A
337: 030A EA MOV A,R2
338: 030B 35 F0 ADDC A,B
339: 030D FA MOV R2,A
340: 030E 4B ORL A,R3
341: 030F 60 03 JZ MULD21
342: 0311 D2 D2 SETB OV
343: 0313 22 RET
344: 0314 MULD21:
345: 0314 C2 D2 CLR OV
346: 0316 22 RET
347:
348:
349:
350: ;四字节无符号数除法
351: ;R0存放被除数,除数,商数的地址。
352: ;从R0开始的连续四个字节为结果的余数,入口时可以为任意,但在出口时发生变化。
353: ;其后的连续4个字节在入口时是被除数,出口时是商数。
354: ;再其后的连续四个字节在入口时是除数,出口时保持不变。
355: ;用到累加器A,B,PSW,R0~R7。
356: ;如果除数为零,则置OV=1标志,否则清零。
357: ;在出口时总是清除C。
358: 0317 DIVD4:
359: 0317 E8 MOV A,R0
360: 0318 F5 F0 MOV B,A
361: 031A 24 08 ADD A,#08h
362: 031C F9 MOV R1,A
363: 031D 74 00 MOV A,#00h
364: 031F 47 ORL A,@R1
365: 0320 09 INC R1
366: 0321 47 ORL A,@R1
367: 0322 09 INC R1
368: 0323 47 ORL A,@R1
369: 0324 09 INC R1
370: 0325 47 ORL A,@R1
371: 0326 60 54 JZ DIVD45
372: 0328 A9 F0 MOV R1,B
373: 032A 7A 04 MOV R2,#04h
374: 032C DIVD41:
375: 032C 77 00 MOV @R1,#00h
376: 032E 09 INC R1
377: 032F DA FB DJNZ R2,DIVD41
378: 0331 7B 20 MOV R3,#20h
379: 0333 DIVD42:
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 8
Line I Addr Code Source
380: 0333 7A 08 MOV R2,#08h
381: 0335 E5 F0 MOV A,B
382: 0337 F8 MOV R0,A
383: 0338 24 07 ADD A,#07h
384: 033A F9 MOV R1,A
385: 033B C3 CLR C
386: 033C DIVD43:
387: 033C E7 MOV A,@R1
388: 033D 33 RLC A
389: 033E F7 MOV @R1,A
390: 033F 19 DEC R1
391: 0340 DA FA DJNZ R2,DIVD43
392: 0342 E8 MOV A,R0
393: 0343 24 03 ADD A,#03h
394: 0345 F9 MOV R1,A
395: 0346 E8 MOV A,R0
396: 0347 24 0B ADD A,#0Bh
397: 0349 F8 MOV R0,A
398: 034A E7 MOV A,@R1
399: 034B 96 SUBB A,@R0
400: 034C FC MOV R4,A
401: 034D 19 DEC R1
402: 034E 18 DEC R0
403: 034F E7 MOV A,@R1
404: 0350 96 SUBB A,@R0
405: 0351 FD MOV R5,A
406: 0352 19 DEC R1
407: 0353 18 DEC R0
408: 0354 E7 MOV A,@R1
409: 0355 96 SUBB A,@R0
410: 0356 FE MOV R6,A
411: 0357 19 DEC R1
412: 0358 18 DEC R0
413: 0359 E7 MOV A,@R1
414: 035A 96 SUBB A,@R0
415: 035B FF MOV R7,A
416: 035C 40 16 JC DIVD44
417: 035E E5 F0 MOV A,B
418: 0360 F8 MOV R0,A
419: 0361 24 03 ADD A,#03h
420: 0363 F9 MOV R1,A
421: 0364 EC MOV A,R4
422: 0365 F7 MOV @R1,A
423: 0366 19 DEC R1
424: 0367 ED MOV A,R5
425: 0368 F7 MOV @R1,A
426: 0369 19 DEC R1
427: 036A EE MOV A,R6
428: 036B F7 MOV @R1,A
429: 036C 19 DEC R1
430: 036D EF MOV A,R7
431: 036E F7 MOV @R1,A
432: 036F E8 MOV A,R0
433: 0370 24 07 ADD A,#07h
434: 0372 F9 MOV R1,A
435: 0373 07 INC @R1
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 9
Line I Addr Code Source
436: 0374 DIVD44:
437: 0374 DB BD DJNZ R3,DIVD42
438: 0376 A8 F0 MOV R0,B
439: 0378 C2 D2 CLR OV
440: 037A C3 CLR C
441: 037B 22 RET
442: 037C DIVD45:
443: 037C D2 D2 SETB OV
444: 037E C3 CLR C
445: 037F 22 RET
446:
447: end
register banks used: ---
no errors
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 10
L I S T O F S Y M B O L S
=============================
SYMBOL TYPE VALUE LINE
------------------------------------------------------------
AC BIT D6
ACC DATA E0
ADAT CODE 01B4 107
ADC CODE 0133 24
B DATA F0
CA CODE 0126 18
CALCULATEA CODE 01CF 122
CR CODE 010C 8
CV CODE 0119 13
CY BIT D7
DELAY_5MS CODE 0293 237
DELAY_5MS1 CODE 0295 238
DELAY_5MS2 CODE 0297 239
DELAY_5MS3 CODE 0299 240
DISPLAY CODE 02AA 257
DIVD4 CODE 0317 358
DIVD41 CODE 032C 374
DIVD42 CODE 0333 379
DIVD43 CODE 033C 386
DIVD44 CODE 0374 436
DIVD45 CODE 037C 442
DPH DATA 83
DPL DATA 82
EA BIT AF
ES BIT AC
ET0 BIT A9
ET1 BIT AB
EX0 BIT A8
EX1 BIT AA
EXTI0 CODE 0003
EXTI1 CODE 0013
F0 BIT D5
IE DATA A8
IE0 BIT 89
IE1 BIT 8B
INT0 BIT B2
INT1 BIT B3
IP DATA B8
IT0 BIT 88
IT1 BIT 8A
LARGERA CODE 01C5 117
LESSA CODE 01C9 119
MAIN CODE 0100 4
MIDDLEA CODE 01CD 121
MULD2 CODE 02E7 308
MULD21 CODE 0314 344
NONZERO CODE 0290 234
NOTEQU CODE 022F 176
OV BIT D2
P BIT D0
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 11
SYMBOL TYPE VALUE LINE
------------------------------------------------------------
P0 DATA 80
P1 DATA 90
P2 DATA A0
P3 DATA B0
PCON DATA 87
PS BIT BC
PSW DATA D0
PT0 BIT B9
PT1 BIT BB
PX0 BIT B8
PX1 BIT BA
RB8 BIT 9A
RD BIT B7
RDAT CODE 0235 180
REN BIT 9C
RESET CODE 0000
RI BIT 98
RS0 BIT D3
RS1 BIT D4
RXD BIT B0
SBUF DATA 99
SCON DATA 98
SEGMENT7 CODE 02A0 246
SINT CODE 0023
SM0 BIT 9F
SM1 BIT 9E
SM2 BIT 9D
SP DATA 81
T0 BIT B4
T1 BIT B5
TB8 BIT 9B
TCON DATA 88
TF0 BIT 8D
TF1 BIT 8F
TH0 DATA 8C
TH1 DATA 8D
TI BIT 99
TIMER0 CODE 000B
TIMER1 CODE 001B
TL0 DATA 8A
TL1 DATA 8B
TMOD DATA 89
TR0 BIT 8C
TR1 BIT 8E
TXD BIT B1
VDAT CODE 013D 32
WR BIT B6
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -