📄 lc.lst
字号:
0658 2C34 MOV R3,R4
0659 2444 CLR R4
065A 50B8 SUBI R27,0x8
065B CFF9 RJMP 0x0655
065C 23BB TST R27
065D F029 BEQ 0x0663
065E 9446 LSR R4
065F 9437 ROR R3
0660 9427 ROR R2
0661 95BA DEC R27
0662 F7D9 BNE 0x065E
0663 2FB8 MOV R27,R24
0664 27BA EOR R27,R26
0665 F04A BMI 0x066F
0666 D018 RCALL 0x067F
0667 F698 BCC 0x063B
0668 9527 ROR R18
0669 9517 ROR R17
066A 9507 ROR R16
066B 5F3F SUBI R19,0xFF
066C F673 BVC 0x063B
066D 940C0777 JMP maxres
066F D013 RCALL usub24
0670 F411 BNE 0x0673
0671 940C077E JMP minres
0673 F410 BCC 0x0676
0674 940E0771 CALL negmant
0676 2322 TST R18
0677 F21A BMI 0x063B
0678 0F00 LSL R16
0679 1F11 ROL R17
067A 1F22 ROL R18
067B 5031 SUBI R19,1
067C F7CB BVC 0x0676
067D 940C0777 JMP maxres
067F 0D02 ADD R16,R2
0680 1D13 ADC R17,R3
0681 1D24 ADC R18,R4
0682 9508 RET
usub24:
0683 1902 SUB R16,R2
0684 0913 SBC R17,R3
0685 0924 SBC R18,R4
0686 9508 RET
div32fs:
0687 D002 RCALL div32f
0688 940C046A JMP push_arg4
div32f:
068A 940E0623 CALL float_prolog
068C D023 RCALL FDIV
068D 940C061C JMP float_epilog
068F 93BA ST R27,-Y
0690 24DD CLR R13
0691 24EE CLR R14
0692 24FF CLR R15
0693 E1B8 LDI R27,0x18
0694 1502 CP R16,R2
0695 0513 CPC R17,R3
0696 0524 CPC R18,R4
0697 F028 BCS 0x069D
0698 1902 SUB R16,R2
0699 0913 SBC R17,R3
069A 0924 SBC R18,R4
069B 9408 BSET 0
069C C001 RJMP 0x069E
069D 9488 BCLR 0
069E 1CDD ROL R13
069F 1CEE ROL R14
06A0 1CFF ROL R15
06A1 0F00 LSL R16
06A2 1F11 ROL R17
06A3 1F22 ROL R18
06A4 95BA DEC R27
06A5 F771 BNE 0x0694
06A6 2D0D MOV R16,R13
06A7 2D1E MOV R17,R14
06A8 2D2F MOV R18,R15
06A9 91B9 LD R27,Y+
06AA 9508 RET
fdiv10:
06AB 2422 CLR R2
06AC 2433 CLR R3
06AD E2B0 LDI R27,0x20
06AE 2E4B MOV R4,R27
06AF E491 LDI R25,0x41
FDIV:
06B0 2399 TST R25
06B1 F129 BEQ 0x06D7
06B2 2333 TST R19
06B3 F151 BEQ 0x06DE
06B4 940E0796 CALL unpack
06B6 F139 BEQ 0x06DE
06B7 278A EOR R24,R26
06B8 9408 BSET 0
06B9 0B39 SBC R19,R25
06BA F0EB BVS 0x06D8
06BB 9446 LSR R4
06BC 9437 ROR R3
06BD 9427 ROR R2
06BE 9526 LSR R18
06BF 9517 ROR R17
06C0 9507 ROR R16
06C1 DFCD RCALL 0x068F
06C2 2322 TST R18
06C3 F02A BMI 0x06C9
06C4 0F00 LSL R16
06C5 1F11 ROL R17
06C6 1F22 ROL R18
06C7 5031 SUBI R19,1
06C8 F07B BVS 0x06D8
06C9 2FB0 MOV R27,R16
06CA 95B6 LSR R27
06CB F048 BCS 0x06D5
06CC 2300 TST R16
06CD F43A BPL 0x06D5
06CE 2311 TST R17
06CF F42A BPL 0x06D5
06D0 E0B1 LDI R27,1
06D1 0F0B ADD R16,R27
06D2 27BB CLR R27
06D3 1F1B ADC R17,R27
06D4 1F2B ADC R18,R27
06D5 940C07A8 JMP repack
06D7 C006 RJMP 0x06DE
06D8 E7BF LDI R27,0x7F
06D9 2F3B MOV R19,R27
06DA 2B2B OR R18,R27
06DB EF0F LDI R16,0xFF
06DC EF1F LDI R17,0xFF
06DD 9508 RET
06DE 2700 CLR R16
06DF 2711 CLR R17
06E0 2722 CLR R18
06E1 2733 CLR R19
06E2 2788 CLR R24
06E3 9508 RET
cmp32f:
06E4 940E0623 CALL float_prolog
06E6 D002 RCALL FLTCP
06E7 940C061C JMP float_epilog
FLTCP:
06E9 D002 RCALL 0x06EC
06EA 23BB TST R27
06EB 9508 RET
06EC 2333 TST R19
06ED F082 BMI 0x06FE
06EE 2399 TST R25
06EF F042 BMI 0x06F8
06F0 1739 CP R19,R25
06F1 F040 BCS 0x06FA
06F2 F429 BNE 0x06F8
06F3 1502 CP R16,R2
06F4 0513 CPC R17,R3
06F5 0524 CPC R18,R4
06F6 F018 BCS 0x06FA
06F7 F021 BEQ 0x06FC
06F8 E0B1 LDI R27,1
06F9 9508 RET
06FA EFBF LDI R27,0xFF
06FB 9508 RET
06FC 27BB CLR R27
06FD 9508 RET
06FE 2399 TST R25
06FF F7D2 BPL 0x06FA
0700 1739 CP R19,R25
0701 F3B0 BCS 0x06F8
0702 F7B9 BNE 0x06FA
0703 1502 CP R16,R2
0704 0513 CPC R17,R3
0705 0524 CPC R18,R4
0706 F388 BCS 0x06F8
0707 F3A1 BEQ 0x06FC
0708 CFF1 RJMP 0x06FA
0709 E7BF LDI R27,0x7F
070A 2F3B MOV R19,R27
070B 2B2B OR R18,R27
070C EF0F LDI R16,0xFF
070D EF1F LDI R17,0xFF
070E 9508 RET
070F 2700 CLR R16
0710 2711 CLR R17
0711 2722 CLR R18
0712 2733 CLR R19
0713 2788 CLR R24
0714 9508 RET
empy32fs:
0715 D002 RCALL empy32f
0716 940C046A JMP push_arg4
empy32f:
0718 940E0623 CALL float_prolog
071A 920F PUSH R0
071B 92CF PUSH R12
071C D004 RCALL eFMUL
071D 90CF POP R12
071E 900F POP R0
071F 940C061C JMP float_epilog
eFMUL:
0721 940E0796 CALL unpack
0723 F359 BEQ 0x070F
0724 3890 CPI R25,0x80
0725 F349 BEQ 0x070F
0726 278A EOR R24,R26
0727 9408 BSET 0
0728 1F39 ADC R19,R25
0729 F2FB BVS 0x0709
072A D00E RCALL eumul24
072B 2D2F MOV R18,R15
072C 2D1E MOV R17,R14
072D 2D0D MOV R16,R13
072E 2322 TST R18
072F F02A BMI 0x0735
0730 953A DEC R19
0731 0CCC LSL R12
0732 1F00 ROL R16
0733 1F11 ROL R17
0734 1F22 ROL R18
0735 5F3F SUBI R19,0xFF
0736 F293 BVS 0x0709
0737 940C07A8 JMP repack
eumul24:
0739 9D22 MUL R18,R2
073A 2CC0 MOV R12,R0
073B 2CD1 MOV R13,R1
073C 9D24 MUL R18,R4
073D 2CE0 MOV R14,R0
073E 2CF1 MOV R15,R1
073F 9D12 MUL R17,R2
0740 0CC1 ADD R12,R1
0741 1EDB ADC R13,R27
0742 1EEB ADC R14,R27
0743 1EFB ADC R15,R27
0744 9D03 MUL R16,R3
0745 0CC1 ADD R12,R1
0746 1EDB ADC R13,R27
0747 1EEB ADC R14,R27
0748 1EFB ADC R15,R27
0749 9D13 MUL R17,R3
074A 0CC0 ADD R12,R0
074B 1CD1 ADC R13,R1
074C 1EEB ADC R14,R27
074D 1EFB ADC R15,R27
074E 9D04 MUL R16,R4
074F 0CC0 ADD R12,R0
0750 1CD1 ADC R13,R1
0751 1EEB ADC R14,R27
0752 1EFB ADC R15,R27
0753 9D23 MUL R18,R3
0754 0CD0 ADD R13,R0
0755 1CE1 ADC R14,R1
0756 1EFB ADC R15,R27
0757 9D14 MUL R17,R4
0758 0CD0 ADD R13,R0
0759 1CE1 ADC R14,R1
075A 1EFB ADC R15,R27
075B 20CC TST R12
075C F422 BPL 0x0761
075D 9488 BCLR 0
075E 1EDB ADC R13,R27
075F 1EEB ADC R14,R27
0760 1EFB ADC R15,R27
0761 9508 RET
savfacc1:
0762 938A ST R24,-Y
0763 93BA ST R27,-Y
0764 9508 RET
restorefacc1:
0765 91B9 LD R27,Y+
0766 9189 LD R24,Y+
0767 9508 RET
unpackfacc1:
0768 2F83 MOV R24,R19
0769 7880 ANDI R24,0x80
076A 0F22 LSL R18
076B 1F33 ROL R19
076C 5830 SUBI R19,0x80
076D 9408 BSET 0
076E 9527 ROR R18
076F 3830 CPI R19,0x80
0770 9508 RET
negmant:
0771 9510 COM R17
0772 9520 COM R18
0773 9501 NEG R16
0774 4F1F SBCI R17,0xFF
0775 4F2F SBCI R18,0xFF
0776 9508 RET
maxres:
0777 E7BF LDI R27,0x7F
0778 2F3B MOV R19,R27
0779 2B2B OR R18,R27
077A EFBF LDI R27,0xFF
077B 2F0B MOV R16,R27
077C 2F1B MOV R17,R27
077D 9508 RET
minres:
077E 2700 CLR R16
077F 2711 CLR R17
0780 2722 CLR R18
0781 2733 CLR R19
0782 2788 CLR R24
0783 9508 RET
ac1toac2:
0784 2F93 MOV R25,R19
0785 2E20 MOV R2,R16
0786 2E31 MOV R3,R17
0787 2E42 MOV R4,R18
0788 2FA8 MOV R26,R24
0789 9508 RET
swapacc:
078A 922A ST R2,-Y
078B 923A ST R3,-Y
078C 924A ST R4,-Y
078D 939A ST R25,-Y
078E 93AA ST R26,-Y
078F DFF4 RCALL ac1toac2
0790 9189 LD R24,Y+
0791 9139 LD R19,Y+
0792 9129 LD R18,Y+
0793 9119 LD R17,Y+
0794 9109 LD R16,Y+
0795 9508 RET
unpack:
0796 2F83 MOV R24,R19
0797 E8B0 LDI R27,0x80
0798 0F22 LSL R18
0799 1F33 ROL R19
079A 273B EOR R19,R27
079B 0FBB LSL R27
079C 9527 ROR R18
079D 7880 ANDI R24,0x80
079E 2FA9 MOV R26,R25
079F E8B0 LDI R27,0x80
07A0 0C44 LSL R4
07A1 1F99 ROL R25
07A2 279B EOR R25,R27
07A3 0FBB LSL R27
07A4 9447 ROR R4
07A5 78A0 ANDI R26,0x80
07A6 3830 CPI R19,0x80
07A7 9508 RET
repack:
07A8 0F22 LSL R18
07A9 E8B0 LDI R27,0x80
07AA 27B3 EOR R27,R19
07AB 0F88 LSL R24
07AC 95B7 ROR R27
07AD 9527 ROR R18
07AE 2F3B MOV R19,R27
07AF 9508 RET
_itoa:
07B0 940E04F5 CALL push_gset5
07B2 2EC2 MOV R12,R18
07B3 2ED3 MOV R13,R19
07B4 2F40 MOV R20,R16
07B5 2F51 MOV R21,R17
07B6 97A2 SBIW R28,0x22
07B7 A4AC LDD R10,Y+44
07B8 A4BD LDD R11,Y+45
07B9 2D8C MOV R24,R12
07BA 2D9D MOV R25,R13
07BB 3080 CPI R24,0
07BC E0E0 LDI R30,0
07BD 079E CPC R25,R30
07BE F444 BGE 0x07C7
07BF E061 LDI R22,1
07C0 9580 COM R24
07C1 9590 COM R25
07C2 5F8F SUBI R24,0xFF
07C3 4F9F SBCI R25,0xFF
07C4 2EC8 MOV R12,R24
07C5 2ED9 MOV R13,R25
07C6 C001 RJMP 0x07C8
07C7 2766 CLR R22
07C8 2422 CLR R2
07C9 A229 STD Y+33,R2
07CA 2F8C MOV R24,R28
07CB 2F9D MOV R25,R29
07CC 9681 ADIW R24,0x21
07CD 2EE8 MOV R14,R24
07CE 2EF9 MOV R15,R25
07CF 2D8E MOV R24,R14
07D0 2D9F MOV R25,R15
07D1 9701 SBIW R24,1
07D2 2E28 MOV R2,R24
07D3 2E39 MOV R3,R25
07D4 2EE8 MOV R14,R24
07D5 2EF9 MOV R15,R25
07D6 2D2A MOV R18,R10
07D7 2D3B MOV R19,R11
07D8 2D0C MOV R16,R12
07D9 2D1D MOV R17,R13
07DA 940E046F CALL mod16s
07DC 2FE0 MOV R30,R16
07DD 2FF1 MOV R31,R17
07DE E68F LDI R24,0x6F
07DF E090 LDI R25,0
07E0 0FE8 ADD R30,R24
07E1 1FF9 ADC R31,R25
07E2 8040 LDD R4,Z+0
07E3 2DE2 MOV R30,R2
07E4 2DF3 MOV R31,R3
07E5 8240 STD Z+0,R4
07E6 2D2A MOV R18,R10
07E7 2D3B MOV R19,R11
07E8 2D0C MOV R16,R12
07E9 2D1D MOV R17,R13
07EA 940E0473 CALL div16s
07EC 2EC0 MOV R12,R16
07ED 2ED1 MOV R13,R17
07EE 20CC TST R12
07EF F6F9 BNE 0x07CF
07F0 20DD TST R13
07F1 F6E9 BNE 0x07CF
07F2 2366 TST R22
07F3 F059 BEQ 0x07FF
07F4 2D8E MOV R24,R14
07F5 2D9F MOV R25,R15
07F6 9701 SBIW R24,1
07F7 2E28 MOV R2,R24
07F8 2E39 MOV R3,R25
07F9 2EE8 MOV R14,R24
07FA 2EF9 MOV R15,R25
07FB E28D LDI R24,0x2D
07FC 2DE2 MOV R30,R2
07FD 2DF3 MOV R31,R3
07FE 8380 STD Z+0,R24
07FF 2D2E MOV R18,R14
0800 2D3F MOV R19,R15
0801 2F04 MOV R16,R20
0802 2F15 MOV R17,R21
0803 940E0461 CALL _strcpy
0805 96A2 ADIW R28,0x22
0806 940E04F2 CALL pop_gset5
0808 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -