⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rctest.lst

📁 一个关于AVR单片机的例程
💻 LST
📖 第 1 页 / 共 4 页
字号:
    04F3 924A      ST	R4,-Y
    04F4 939A      ST	R25,-Y
    04F5 93AA      ST	R26,-Y
    04F6 93BA      ST	R27,-Y
    04F7 9508      RET
restore_floatregs:
    04F8 91B9      LD	R27,Y+
    04F9 91A9      LD	R26,Y+
    04FA 9199      LD	R25,Y+
    04FB 9049      LD	R4,Y+
    04FC 9039      LD	R3,Y+
    04FD 9029      LD	R2,Y+
    04FE 9189      LD	R24,Y+
    04FF 90F9      LD	R15,Y+
    0500 90E9      LD	R14,Y+
    0501 90D9      LD	R13,Y+
    0502 9508      RET
stk2arg1:
    0503 842A      LDD	R2,Y+10
    0504 843B      LDD	R3,Y+11
    0505 844C      LDD	R4,Y+12
    0506 859D      LDD	R25,Y+13
    0507 9508      RET
stk2arg0:
    0508 850E      LDD	R16,Y+14
    0509 851F      LDD	R17,Y+15
    050A 8928      LDD	R18,Y+16
    050B 8939      LDD	R19,Y+17
    050C 9508      RET
float_epilog:
    050D DFEA      RCALL	restore_floatregs
    050E 920F      PUSH	R0
    050F B60F      IN	R0,0x3F
    0510 9628      ADIW	R28,0x8
    0511 BE0F      OUT	0x3F,R0
    0512 900F      POP	R0
    0513 9508      RET
float_prolog:
    0514 DFD8      RCALL	save_floatregs
    0515 DFF2      RCALL	stk2arg0
    0516 CFEC      RJMP	stk2arg1
add32fs:
    0517 D002      RCALL	add32f
    0518 940C0402  JMP	push_arg4
add32f:
    051A 940E0514  CALL	float_prolog
    051C D012      RCALL	FADD
    051D 940C050D  JMP	float_epilog
sub32fs:
    051F D002      RCALL	sub32f
    0520 940C0402  JMP	push_arg4
sub32f:
    0522 940E0514  CALL	float_prolog
    0524 D009      RCALL	FSUB
    0525 940C050D  JMP	float_epilog
fret2:
    0527 2F8A      MOV	R24,R26
    0528 2F39      MOV	R19,R25
    0529 2D24      MOV	R18,R4
    052A 2D13      MOV	R17,R3
    052B 2D02      MOV	R16,R2
    052C 940C0699  JMP	repack
FSUB:
    052E 5890      SUBI	R25,0x80
FADD:
    052F 940E0687  CALL	unpack
    0531 3890      CPI	R25,0x80
    0532 F3C9      BEQ	0x052C
    0533 3830      CPI	R19,0x80
    0534 F391      BEQ	0x0527
    0535 2FB3      MOV	R27,R19
    0536 1BB9      SUB	R27,R25
    0537 F3A3      BVS	0x052C
    0538 F02A      BMI	0x053E
    0539 F439      BNE	0x0541
    053A 1502      CP	R16,R2
    053B 0513      CPC	R17,R3
    053C 0524      CPC	R18,R4
    053D F418      BCC	0x0541
    053E 940E067B  CALL	swapacc
    0540 CFF4      RJMP	0x0535
    0541 31B8      CPI	R27,0x18
    0542 F018      BCS	0x0546
    0543 2422      CLR	R2
    0544 2433      CLR	R3
    0545 2444      CLR	R4
    0546 30B8      CPI	R27,0x8
    0547 F028      BCS	0x054D
    0548 2C23      MOV	R2,R3
    0549 2C34      MOV	R3,R4
    054A 2444      CLR	R4
    054B 50B8      SUBI	R27,0x8
    054C CFF9      RJMP	0x0546
    054D 23BB      TST	R27
    054E F029      BEQ	0x0554
    054F 9446      LSR	R4
    0550 9437      ROR	R3
    0551 9427      ROR	R2
    0552 95BA      DEC	R27
    0553 F7D9      BNE	0x054F
    0554 2FB8      MOV	R27,R24
    0555 27BA      EOR	R27,R26
    0556 F04A      BMI	0x0560
    0557 D018      RCALL	0x0570
    0558 F698      BCC	0x052C
    0559 9527      ROR	R18
    055A 9517      ROR	R17
    055B 9507      ROR	R16
    055C 5F3F      SUBI	R19,0xFF
    055D F673      BVC	0x052C
    055E 940C0668  JMP	maxres
    0560 D013      RCALL	usub24
    0561 F411      BNE	0x0564
    0562 940C066F  JMP	minres
    0564 F410      BCC	0x0567
    0565 940E0662  CALL	negmant
    0567 2322      TST	R18
    0568 F21A      BMI	0x052C
    0569 0F00      LSL	R16
    056A 1F11      ROL	R17
    056B 1F22      ROL	R18
    056C 5031      SUBI	R19,1
    056D F7CB      BVC	0x0567
    056E 940C0668  JMP	maxres
    0570 0D02      ADD	R16,R2
    0571 1D13      ADC	R17,R3
    0572 1D24      ADC	R18,R4
    0573 9508      RET
usub24:
    0574 1902      SUB	R16,R2
    0575 0913      SBC	R17,R3
    0576 0924      SBC	R18,R4
    0577 9508      RET
div32fs:
    0578 D002      RCALL	div32f
    0579 940C0402  JMP	push_arg4
div32f:
    057B 940E0514  CALL	float_prolog
    057D D023      RCALL	FDIV
    057E 940C050D  JMP	float_epilog
    0580 93BA      ST	R27,-Y
    0581 24DD      CLR	R13
    0582 24EE      CLR	R14
    0583 24FF      CLR	R15
    0584 E1B8      LDI	R27,0x18
    0585 1502      CP	R16,R2
    0586 0513      CPC	R17,R3
    0587 0524      CPC	R18,R4
    0588 F028      BCS	0x058E
    0589 1902      SUB	R16,R2
    058A 0913      SBC	R17,R3
    058B 0924      SBC	R18,R4
    058C 9408      BSET	0
    058D C001      RJMP	0x058F
    058E 9488      BCLR	0
    058F 1CDD      ROL	R13
    0590 1CEE      ROL	R14
    0591 1CFF      ROL	R15
    0592 0F00      LSL	R16
    0593 1F11      ROL	R17
    0594 1F22      ROL	R18
    0595 95BA      DEC	R27
    0596 F771      BNE	0x0585
    0597 2D0D      MOV	R16,R13
    0598 2D1E      MOV	R17,R14
    0599 2D2F      MOV	R18,R15
    059A 91B9      LD	R27,Y+
    059B 9508      RET
fdiv10:
    059C 2422      CLR	R2
    059D 2433      CLR	R3
    059E E2B0      LDI	R27,0x20
    059F 2E4B      MOV	R4,R27
    05A0 E491      LDI	R25,0x41
FDIV:
    05A1 2399      TST	R25
    05A2 F129      BEQ	0x05C8
    05A3 2333      TST	R19
    05A4 F151      BEQ	0x05CF
    05A5 940E0687  CALL	unpack
    05A7 F139      BEQ	0x05CF
    05A8 278A      EOR	R24,R26
    05A9 9408      BSET	0
    05AA 0B39      SBC	R19,R25
    05AB F0EB      BVS	0x05C9
    05AC 9446      LSR	R4
    05AD 9437      ROR	R3
    05AE 9427      ROR	R2
    05AF 9526      LSR	R18
    05B0 9517      ROR	R17
    05B1 9507      ROR	R16
    05B2 DFCD      RCALL	0x0580
    05B3 2322      TST	R18
    05B4 F02A      BMI	0x05BA
    05B5 0F00      LSL	R16
    05B6 1F11      ROL	R17
    05B7 1F22      ROL	R18
    05B8 5031      SUBI	R19,1
    05B9 F07B      BVS	0x05C9
    05BA 2FB0      MOV	R27,R16
    05BB 95B6      LSR	R27
    05BC F048      BCS	0x05C6
    05BD 2300      TST	R16
    05BE F43A      BPL	0x05C6
    05BF 2311      TST	R17
    05C0 F42A      BPL	0x05C6
    05C1 E0B1      LDI	R27,1
    05C2 0F0B      ADD	R16,R27
    05C3 27BB      CLR	R27
    05C4 1F1B      ADC	R17,R27
    05C5 1F2B      ADC	R18,R27
    05C6 940C0699  JMP	repack
    05C8 C006      RJMP	0x05CF
    05C9 E7BF      LDI	R27,0x7F
    05CA 2F3B      MOV	R19,R27
    05CB 2B2B      OR	R18,R27
    05CC EF0F      LDI	R16,0xFF
    05CD EF1F      LDI	R17,0xFF
    05CE 9508      RET
    05CF 2700      CLR	R16
    05D0 2711      CLR	R17
    05D1 2722      CLR	R18
    05D2 2733      CLR	R19
    05D3 2788      CLR	R24
    05D4 9508      RET
cmp32f:
    05D5 940E0514  CALL	float_prolog
    05D7 D002      RCALL	FLTCP
    05D8 940C050D  JMP	float_epilog
FLTCP:
    05DA D002      RCALL	0x05DD
    05DB 23BB      TST	R27
    05DC 9508      RET
    05DD 2333      TST	R19
    05DE F082      BMI	0x05EF
    05DF 2399      TST	R25
    05E0 F042      BMI	0x05E9
    05E1 1739      CP	R19,R25
    05E2 F040      BCS	0x05EB
    05E3 F429      BNE	0x05E9
    05E4 1502      CP	R16,R2
    05E5 0513      CPC	R17,R3
    05E6 0524      CPC	R18,R4
    05E7 F018      BCS	0x05EB
    05E8 F021      BEQ	0x05ED
    05E9 E0B1      LDI	R27,1
    05EA 9508      RET
    05EB EFBF      LDI	R27,0xFF
    05EC 9508      RET
    05ED 27BB      CLR	R27
    05EE 9508      RET
    05EF 2399      TST	R25
    05F0 F7D2      BPL	0x05EB
    05F1 1739      CP	R19,R25
    05F2 F3B0      BCS	0x05E9
    05F3 F7B9      BNE	0x05EB
    05F4 1502      CP	R16,R2
    05F5 0513      CPC	R17,R3
    05F6 0524      CPC	R18,R4
    05F7 F388      BCS	0x05E9
    05F8 F3A1      BEQ	0x05ED
    05F9 CFF1      RJMP	0x05EB
    05FA E7BF      LDI	R27,0x7F
    05FB 2F3B      MOV	R19,R27
    05FC 2B2B      OR	R18,R27
    05FD EF0F      LDI	R16,0xFF
    05FE EF1F      LDI	R17,0xFF
    05FF 9508      RET
    0600 2700      CLR	R16
    0601 2711      CLR	R17
    0602 2722      CLR	R18
    0603 2733      CLR	R19
    0604 2788      CLR	R24
    0605 9508      RET
empy32fs:
    0606 D002      RCALL	empy32f
    0607 940C0402  JMP	push_arg4
empy32f:
    0609 940E0514  CALL	float_prolog
    060B 920F      PUSH	R0
    060C 92CF      PUSH	R12
    060D D004      RCALL	eFMUL
    060E 90CF      POP	R12
    060F 900F      POP	R0
    0610 940C050D  JMP	float_epilog
eFMUL:
    0612 940E0687  CALL	unpack
    0614 F359      BEQ	0x0600
    0615 3890      CPI	R25,0x80
    0616 F349      BEQ	0x0600
    0617 278A      EOR	R24,R26
    0618 9408      BSET	0
    0619 1F39      ADC	R19,R25
    061A F2FB      BVS	0x05FA
    061B D00E      RCALL	eumul24
    061C 2D2F      MOV	R18,R15
    061D 2D1E      MOV	R17,R14
    061E 2D0D      MOV	R16,R13
    061F 2322      TST	R18
    0620 F02A      BMI	0x0626
    0621 953A      DEC	R19
    0622 0CCC      LSL	R12
    0623 1F00      ROL	R16
    0624 1F11      ROL	R17
    0625 1F22      ROL	R18
    0626 5F3F      SUBI	R19,0xFF
    0627 F293      BVS	0x05FA
    0628 940C0699  JMP	repack
eumul24:
    062A 9D22      MUL	R18,R2
    062B 2CC0      MOV	R12,R0
    062C 2CD1      MOV	R13,R1
    062D 9D24      MUL	R18,R4
    062E 2CE0      MOV	R14,R0
    062F 2CF1      MOV	R15,R1
    0630 9D12      MUL	R17,R2
    0631 0CC1      ADD	R12,R1
    0632 1EDB      ADC	R13,R27
    0633 1EEB      ADC	R14,R27
    0634 1EFB      ADC	R15,R27
    0635 9D03      MUL	R16,R3
    0636 0CC1      ADD	R12,R1
    0637 1EDB      ADC	R13,R27
    0638 1EEB      ADC	R14,R27
    0639 1EFB      ADC	R15,R27
    063A 9D13      MUL	R17,R3
    063B 0CC0      ADD	R12,R0
    063C 1CD1      ADC	R13,R1
    063D 1EEB      ADC	R14,R27
    063E 1EFB      ADC	R15,R27
    063F 9D04      MUL	R16,R4
    0640 0CC0      ADD	R12,R0
    0641 1CD1      ADC	R13,R1
    0642 1EEB      ADC	R14,R27
    0643 1EFB      ADC	R15,R27
    0644 9D23      MUL	R18,R3
    0645 0CD0      ADD	R13,R0
    0646 1CE1      ADC	R14,R1
    0647 1EFB      ADC	R15,R27
    0648 9D14      MUL	R17,R4
    0649 0CD0      ADD	R13,R0
    064A 1CE1      ADC	R14,R1
    064B 1EFB      ADC	R15,R27
    064C 20CC      TST	R12
    064D F422      BPL	0x0652
    064E 9488      BCLR	0
    064F 1EDB      ADC	R13,R27
    0650 1EEB      ADC	R14,R27
    0651 1EFB      ADC	R15,R27
    0652 9508      RET
savfacc1:
    0653 938A      ST	R24,-Y
    0654 93BA      ST	R27,-Y
    0655 9508      RET
restorefacc1:
    0656 91B9      LD	R27,Y+
    0657 9189      LD	R24,Y+
    0658 9508      RET
unpackfacc1:
    0659 2F83      MOV	R24,R19
    065A 7880      ANDI	R24,0x80
    065B 0F22      LSL	R18
    065C 1F33      ROL	R19
    065D 5830      SUBI	R19,0x80
    065E 9408      BSET	0
    065F 9527      ROR	R18
    0660 3830      CPI	R19,0x80
    0661 9508      RET
negmant:
    0662 9510      COM	R17
    0663 9520      COM	R18
    0664 9501      NEG	R16
    0665 4F1F      SBCI	R17,0xFF
    0666 4F2F      SBCI	R18,0xFF
    0667 9508      RET
maxres:
    0668 E7BF      LDI	R27,0x7F
    0669 2F3B      MOV	R19,R27
    066A 2B2B      OR	R18,R27
    066B EFBF      LDI	R27,0xFF
    066C 2F0B      MOV	R16,R27
    066D 2F1B      MOV	R17,R27
    066E 9508      RET
minres:
    066F 2700      CLR	R16
    0670 2711      CLR	R17
    0671 2722      CLR	R18
    0672 2733      CLR	R19
    0673 2788      CLR	R24
    0674 9508      RET
ac1toac2:
    0675 2F93      MOV	R25,R19
    0676 2E20      MOV	R2,R16
    0677 2E31      MOV	R3,R17
    0678 2E42      MOV	R4,R18
    0679 2FA8      MOV	R26,R24
    067A 9508      RET
swapacc:
    067B 922A      ST	R2,-Y
    067C 923A      ST	R3,-Y
    067D 924A      ST	R4,-Y
    067E 939A      ST	R25,-Y
    067F 93AA      ST	R26,-Y
    0680 DFF4      RCALL	ac1toac2
    0681 9189      LD	R24,Y+
    0682 9139      LD	R19,Y+
    0683 9129      LD	R18,Y+
    0684 9119      LD	R17,Y+
    0685 9109      LD	R16,Y+
    0686 9508      RET
unpack:
    0687 2F83      MOV	R24,R19
    0688 E8B0      LDI	R27,0x80
    0689 0F22      LSL	R18
    068A 1F33      ROL	R19
    068B 273B      EOR	R19,R27
    068C 0FBB      LSL	R27
    068D 9527      ROR	R18
    068E 7880      ANDI	R24,0x80
    068F 2FA9      MOV	R26,R25
    0690 E8B0      LDI	R27,0x80
    0691 0C44      LSL	R4
    0692 1F99      ROL	R25
    0693 279B      EOR	R25,R27
    0694 0FBB      LSL	R27
    0695 9447      ROR	R4
    0696 78A0      ANDI	R26,0x80
    0697 3830      CPI	R19,0x80
    0698 9508      RET
repack:
    0699 0F22      LSL	R18
    069A E8B0      LDI	R27,0x80
    069B 27B3      EOR	R27,R19
    069C 0F88      LSL	R24
    069D 95B7      ROR	R27
    069E 9527      ROR	R18
    069F 2F3B      MOV	R19,R27
    06A0 9508      RET

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -