📄 untitled.lst
字号:
273 06DF 1283 bcf 3,5
274 06E0 01A9 clrf ?a_read_bit
275 ;Untitled.c: 58: asm("nop");asm("nop");asm("nop
+ ");asm("nop");
276 06E1 0000 nop ;#
277 06E2 0000 nop ;#
278 06E3 0000 nop ;#
279 06E4 0000 nop ;#
280 ;Untitled.c: 59: if(RA4)sampling++;asm("nop");a
+ sm("nop");asm("nop");asm("nop");
281 06E5 1A05 btfsc 5,4
282 06E6 0AA9 incf ?a_read_bit
283 06E7 0000 nop ;#
284 06E8 0000 nop ;#
285 06E9 0000 nop ;#
286 06EA 0000 nop ;#
287 ;Untitled.c: 60: if(RA4)sampling++;asm("nop");a
+ sm("nop");asm("nop");asm("nop");
288 06EB 1A05 btfsc 5,4
289 06EC 0AA9 incf ?a_read_bit
290 06ED 0000 nop ;#
291 06EE 0000 nop ;#
292 06EF 0000 nop ;#
293 06F0 0000 nop ;#
294 ;Untitled.c: 61: if(RA4)sampling++;
295 06F1 1A05 btfsc 5,4
296 06F2 0AA9 incf ?a_read_bit
297 ;Untitled.c: 62: delay(2);
298 06F3 3002 movlw 2
299 06F4 00AB movwf ?_delay
300 06F5 01AC clrf ?_delay+1
301 06F6 26A8 fcall _delay
302 ;Untitled.c: 63: if(sampling>=2)
303 06F7 3002 movlw 2
304 06F8 0229 subwf ?a_read_bit,w
305 06F9 0008 return
306 ;Untitled.c: 72: bit write_bit(unsigned char bi
+ tval)
307 ;Untitled.c: 73: { unsigned char sampling=0;
308 06FA _write_bit
309 ; _bitval assigned to ?a_write_bit+0
310 0000 _write_bit$bitval set ?a_write_bit
311 ; _sampling assigned to ?a_write_bit+1
312 0000 _write_bit$sampling set ?a_write_bit+1
313 ;_bitval stored from w
314 06FA 0183 clrf 3 ;select bank 0
315 06FB 00A9 movwf ?a_write_bit
316 06FC 01AA clrf ?a_write_bit+1
317 ;Untitled.c: 74: TRISA4=0;
318 06FD 1683 bsf 3,5
319 06FE 1205 bcf 5,4
320 ;Untitled.c: 75: asm("nop");asm("nop");asm("nop
+ ");asm("nop");
321 06FF 0000 nop ;#
322 0700 0000 nop ;#
323 0701 0000 nop ;#
324 0702 0000 nop ;#
325 ;Untitled.c: 76: if(bitval&0x01)
326 0703 1283 bcf 3,5
327 0704 1C29 btfss ?a_write_bit,0
328 0705 2F08 goto l18
329 ;Untitled.c: 77: TRISA4=1;asm("nop");asm("nop")
+ ;asm("nop");asm("nop");
330 0706 1683 bsf 3,5
331 0707 1605 bsf 5,4
332 0708 l18
333 0708 0000 nop ;#
334 0709 0000 nop ;#
335 070A 0000 nop ;#
336 070B 0000 nop ;#
337 ;Untitled.c: 78: if(RA4)sampling++;asm("nop");a
+ sm("nop");asm("nop");asm("nop");
338 070C 1283 bcf 3,5
339 070D 1A05 btfsc 5,4
340 070E 0AAA incf ?a_write_bit+1
341 070F 0000 nop ;#
342 0710 0000 nop ;#
343 0711 0000 nop ;#
344 0712 0000 nop ;#
345 ;Untitled.c: 79: if(RA4)sampling++;asm("nop");a
+ sm("nop");asm("nop");asm("nop");
346 0713 1A05 btfsc 5,4
347 0714 0AAA incf ?a_write_bit+1
348 0715 0000 nop ;#
349 0716 0000 nop ;#
350 0717 0000 nop ;#
351 0718 0000 nop ;#
352 ;Untitled.c: 80: if(RA4)sampling++;
353 0719 1A05 btfsc 5,4
354 071A 0AAA incf ?a_write_bit+1
355 ;Untitled.c: 81: delay(2);
356 071B 3002 movlw 2
357 071C 00AB movwf ?_delay
358 071D 01AC clrf ?_delay+1
359 071E 26A8 fcall _delay
360 ;Untitled.c: 82: sampling=(sampling>=2);
361 071F 3002 movlw 2
362 0720 022A subwf ?a_write_bit+1,w
363 0721 3000 movlw 0
364 0722 1803 btfsc 3,0
365 0723 3001 movlw 1
366 0724 00AA movwf ?a_write_bit+1
367 ;Untitled.c: 83: TRISA4=1;
368 0725 1683 bsf 3,5
369 0726 1605 bsf 5,4
370 ;Untitled.c: 84: if(sampling==bitval)
371 0727 1283 bcf 3,5
372 0728 082A movf ?a_write_bit+1,w
373 0729 0629 xorwf ?a_write_bit,w
374 072A 1D03 btfss 3,2
375 072B 2F2E goto l22
376 ;Untitled.c: 85: return (1);
377 072C 1403 bsf 3,0
378 072D 0008 return
379 072E l22
380 ;Untitled.c: 86: return (0);
381 072E 1003 bcf 3,0
382 ;Untitled.c: 89: }
383 072F 0008 return
384 ;Untitled.c: 93: unsigned char read_byte()
385 ;Untitled.c: 94: {
386 0730 _read_byte
387 ; _i assigned to ?a_read_byte+0
388 0000 _read_byte$i set ?a_read_byte
389 ; _value assigned to ?a_read_byte+1
390 0000 _read_byte$value set ?a_read_byte+1
391 ;Untitled.c: 95: unsigned char i;
392 0730 0183 clrf 3 ;select bank 0
393 0731 01A8 clrf ?a_read_byte+1
394 ;Untitled.c: 100: for (i=8;i!=0;i--)
395 0732 3008 movlw 8
396 0733 00A7 movwf ?a_read_byte
397 0734 l24
398 ;Untitled.c: 101: { value>>=1;
399 0734 1003 bcf 3,0
400 0735 0CA8 rrf ?a_read_byte+1
401 ;Untitled.c: 102: if(read_bit())
402 0736 26D5 120A 118A fcall _read_bit
403 0739 1803 btfsc 3,0
404 ;Untitled.c: 103: value|=0x80;
405 073A 17A8 bsf ?a_read_byte+1,7
406 ;Untitled.c: 104: delay(4);
407 073B 3004 movlw 4
408 073C 00AB movwf ?_delay
409 073D 01AC clrf ?_delay+1
410 073E 26A8 fcall _delay
411 ;Untitled.c: 105: }
412 073F 0BA7 decfsz ?a_read_byte
413 0740 2F34 goto l24
414 ;Untitled.c: 106: return(value);
415 0741 0828 movf ?a_read_byte+1,w
416 ;Untitled.c: 107: }
417 0742 0008 return
418 ;Untitled.c: 150: main()
419 ;Untitled.c: 151: {
420 0743 _main
421 ; _temp assigned to ?a_main+0
422 0000 _main$temp set ?a_main
423 ;Untitled.c: 154: unsigned int temp;
424 0743 1683 bsf 3,5
425 0744 1303 bcf 3,6 ;carry unused
426 0745 0186 clrf 6 ;volatile
427 ;Untitled.c: 156: TRISD=0x0;
428 0746 0188 clrf 8 ;volatile
429 ;Untitled.c: 158: temp=read();
430 0747 2663 fcall _read
431 0748 0870 movf btemp,w
432 0749 00A1 movwf ?a_main
433 074A 0871 movf btemp+1,w
434 074B 00A2 movwf ?a_main+1
435 ;Untitled.c: 160: buffer[0]=temp/100;
436 074C 3064 movlw 100
437 074D 00F2 movwf btemp+2
438 074E 01F3 clrf btemp+3
439 074F 0822 movf ?a_main+1,w
440 0750 00F1 movwf btemp+1
441 0751 0821 movf ?a_main,w
442 0752 00F0 movwf btemp
443 0753 120A 118A 27B2 fcall lwdiv
444 0756 0874 movf btemp+4,w
445 0757 00B7 movwf _buffer
446 0758 0875 movf btemp+5,w
447 0759 00B8 movwf _buffer+1
448 ;Untitled.c: 161: temp=temp%100;
449 075A 3064 movlw 100
450 075B 00F2 movwf btemp+2
451 075C 01F3 clrf btemp+3
452 075D 0822 movf ?a_main+1,w
453 075E 00F1 movwf btemp+1
454 075F 0821 movf ?a_main,w
455 0760 00F0 movwf btemp
456 0761 120A 118A 27B2 fcall lwmod
457 0764 0870 movf btemp,w
458 0765 00A1 movwf ?a_main
459 0766 0871 movf btemp+1,w
460 0767 00A2 movwf ?a_main+1
461 ;Untitled.c: 162: buffer[1]=temp/10;
462 0768 300A movlw 10
463 0769 00F2 movwf btemp+2
464 076A 01F3 clrf btemp+3
465 076B 0822 movf ?a_main+1,w
466 076C 00F1 movwf btemp+1
467 076D 0821 movf ?a_main,w
468 076E 00F0 movwf btemp
469 076F 120A 118A 27B2 fcall lwdiv
470 0772 0874 movf btemp+4,w
471 0773 00B9 movwf _buffer+2
472 0774 0875 movf btemp+5,w
473 0775 00BA movwf _buffer+3
474 ;Untitled.c: 163: temp=temp%10;
475 0776 300A movlw 10
476 0777 00F2 movwf btemp+2
477 0778 01F3 clrf btemp+3
478 0779 0822 movf ?a_main+1,w
479 077A 00F1 movwf btemp+1
480 077B 0821 movf ?a_main,w
481 077C 00F0 movwf btemp
482 077D 120A 118A 27B2 fcall lwmod
+ 120A 118A
483 0782 0870 movf btemp,w
484 0783 00A1 movwf ?a_main
485 0784 0871 movf btemp+1,w
486 0785 00A2 movwf ?a_main+1
487 ;Untitled.c: 164: buffer[2]=temp;
488 0786 0821 movf ?a_main,w
489 0787 00BB movwf _buffer+4
490 0788 0822 movf ?a_main+1,w
491 0789 00BC movwf _buffer+5
492 ;Untitled.c: 166: RB0=1;
493 078A 1406 bsf 6,0
494 ;Untitled.c: 167: PORTD=a[buffer[0]];
495 078B 0837 movf _buffer,w
496 078C 3E2D addlw _a
497 078D 0084 movwf 4
498 078E 1383 bcf 3,7
499 078F 0800 movf 0,w
500 0790 0088 movwf 8 ;volatile
501 ;Untitled.c: 168: RB0=0;
502 0791 1006 bcf 6,0
503 ;Untitled.c: 169: delay(100);
504 0792 3064 movlw 100
505 0793 00AB movwf ?_delay
506 0794 01AC clrf ?_delay+1
507 0795 26A8 fcall _delay
508 ;Untitled.c: 171: RB1=1;
509 0796 1486 bsf 6,1
510 ;Untitled.c: 172: PORTD=a[buffer[1]];
511 0797 0839 movf _buffer+2,w
512 0798 3E2D addlw _a
513 0799 0084 movwf 4
514 079A 1383 bcf 3,7
515 079B 0800 movf 0,w
516 079C 0088 movwf 8 ;volatile
517 ;Untitled.c: 173: RB1=0;
518 079D 1086 bcf 6,1
519 ;Untitled.c: 174: delay(100);
520 079E 3064 movlw 100
521 079F 00AB movwf ?_delay
522 07A0 01AC clrf ?_delay+1
523 07A1 26A8 fcall _delay
524 ;Untitled.c: 176: RB2=1;
525 07A2 1506 bsf 6,2
526 ;Untitled.c: 177: PORTD=a[buffer[2]];
527 07A3 083B movf _buffer+4,w
528 07A4 3E2D addlw _a
529 07A5 0084 movwf 4
530 07A6 1383 bcf 3,7
531 07A7 0800 movf 0,w
532 07A8 0088 movwf 8 ;volatile
533 ;Untitled.c: 178: RB2=0;
534 07A9 1106 bcf 6,2
535 ;Untitled.c: 179: delay(100);
536 07AA 3064 movlw 100
537 07AB 00AB movwf ?_delay
538 07AC 01AC clrf ?_delay+1
539 07AD 26A8 fcall _delay
540 ;Untitled.c: 180: RB3=1;
541 07AE 1586 bsf 6,3
542 ;Untitled.c: 181: }
543 07AF 120A 118A 2804 ljmp start
544
545 psect rbit_0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -