📄 main.lst
字号:
079D 2E39 MOV R3,R25
079E 2F48 MOV R20,R24
079F 2F59 MOV R21,R25
07A0 2F26 MOV R18,R22
07A1 2F37 MOV R19,R23
07A2 2D0A MOV R16,R10
07A3 2D1B MOV R17,R11
07A4 940E0359 CALL mod16u
07A6 2FE0 MOV R30,R16
07A7 2FF1 MOV R31,R17
07A8 E182 LDI R24,0x12
07A9 E091 LDI R25,1
07AA 0FE8 ADD R30,R24
07AB 1FF9 ADC R31,R25
07AC 8040 LDD R4,Z+0
07AD 2DE2 MOV R30,R2
07AE 2DF3 MOV R31,R3
07AF 8240 STD Z+0,R4
07B0 2F26 MOV R18,R22
07B1 2F37 MOV R19,R23
07B2 2D0A MOV R16,R10
07B3 2D1B MOV R17,R11
07B4 940E035B CALL div16u
07B6 2EA0 MOV R10,R16
07B7 2EB1 MOV R11,R17
07B8 20AA TST R10
07B9 F6F9 BNE 0x0799
07BA 20BB TST R11
07BB F6E9 BNE 0x0799
07BC 2F24 MOV R18,R20
07BD 2F35 MOV R19,R21
07BE 2D0C MOV R16,R12
07BF 2D1D MOV R17,R13
07C0 940E032D CALL _strcpy
07C2 96A2 ADIW R28,0x22
07C3 940E0378 CALL pop_gset4
07C5 9508 RET
_isdigit:
07C6 E687 LDI R24,0x67
07C7 E090 LDI R25,0
07C8 2E20 MOV R2,R16
07C9 2E31 MOV R3,R17
07CA 0E28 ADD R2,R24
07CB 1E39 ADC R3,R25
07CC 2DE2 MOV R30,R2
07CD 2DF3 MOV R31,R3
07CE 95C8 LPM
07CF 2D00 MOV R16,R0
07D0 2711 CLR R17
07D1 7004 ANDI R16,4
07D2 7010 ANDI R17,0
07D3 9508 RET
_islower:
07D4 E687 LDI R24,0x67
07D5 E090 LDI R25,0
07D6 2E20 MOV R2,R16
07D7 2E31 MOV R3,R17
07D8 0E28 ADD R2,R24
07D9 1E39 ADC R3,R25
07DA 2DE2 MOV R30,R2
07DB 2DF3 MOV R31,R3
07DC 95C8 LPM
07DD 2D00 MOV R16,R0
07DE 2711 CLR R17
07DF 7002 ANDI R16,2
07E0 7010 ANDI R17,0
07E1 9508 RET
_isspace:
07E2 E687 LDI R24,0x67
07E3 E090 LDI R25,0
07E4 2E20 MOV R2,R16
07E5 2E31 MOV R3,R17
07E6 0E28 ADD R2,R24
07E7 1E39 ADC R3,R25
07E8 2DE2 MOV R30,R2
07E9 2DF3 MOV R31,R3
07EA 95C8 LPM
07EB 2D00 MOV R16,R0
07EC 2711 CLR R17
07ED 7100 ANDI R16,0x10
07EE 7010 ANDI R17,0
07EF 9508 RET
_isupper:
07F0 E687 LDI R24,0x67
07F1 E090 LDI R25,0
07F2 2E20 MOV R2,R16
07F3 2E31 MOV R3,R17
07F4 0E28 ADD R2,R24
07F5 1E39 ADC R3,R25
07F6 2DE2 MOV R30,R2
07F7 2DF3 MOV R31,R3
07F8 95C8 LPM
07F9 2D00 MOV R16,R0
07FA 2711 CLR R17
07FB 7001 ANDI R16,1
07FC 7010 ANDI R17,0
07FD 9508 RET
_isxdigit:
07FE E687 LDI R24,0x67
07FF E090 LDI R25,0
0800 2E20 MOV R2,R16
0801 2E31 MOV R3,R17
0802 0E28 ADD R2,R24
0803 1E39 ADC R3,R25
0804 2DE2 MOV R30,R2
0805 2DF3 MOV R31,R3
0806 95C8 LPM
0807 2D00 MOV R16,R0
0808 2711 CLR R17
0809 7008 ANDI R16,0x8
080A 7010 ANDI R17,0
080B 9508 RET
_toupper:
080C 940E0386 CALL push_gset1
080E 2F40 MOV R20,R16
080F 2F51 MOV R21,R17
0810 2F04 MOV R16,R20
0811 2F15 MOV R17,R21
0812 940E07D4 CALL _islower
0814 3000 CPI R16,0
0815 0701 CPC R16,R17
0816 F039 BEQ 0x081E
0817 2F04 MOV R16,R20
0818 2F15 MOV R17,R21
0819 5601 SUBI R16,0x61
081A 4010 SBCI R17,0
081B 5B0F SUBI R16,0xBF
081C 4F1F SBCI R17,0xFF
081D C002 RJMP 0x0820
081E 2F04 MOV R16,R20
081F 2F15 MOV R17,R21
0820 940E0389 CALL pop_gset1
0822 9508 RET
_tolower:
0823 940E0386 CALL push_gset1
0825 2F40 MOV R20,R16
0826 2F51 MOV R21,R17
0827 2F04 MOV R16,R20
0828 2F15 MOV R17,R21
0829 940E07F0 CALL _isupper
082B 3000 CPI R16,0
082C 0701 CPC R16,R17
082D F039 BEQ 0x0835
082E 2F04 MOV R16,R20
082F 2F15 MOV R17,R21
0830 5401 SUBI R16,0x41
0831 4010 SBCI R17,0
0832 590F SUBI R16,0x9F
0833 4F1F SBCI R17,0xFF
0834 C002 RJMP 0x0837
0835 2F04 MOV R16,R20
0836 2F15 MOV R17,R21
0837 940E0389 CALL pop_gset1
0839 9508 RET
083A 940E0380 CALL push_gset4
083C 2EA2 MOV R10,R18
083D 2EB3 MOV R11,R19
083E 2F40 MOV R20,R16
083F 2F51 MOV R21,R17
0840 8568 LDD R22,Y+8
0841 8579 LDD R23,Y+9
0842 C012 RJMP 0x0855
0843 2D0C MOV R16,R12
0844 2D1D MOV R17,R13
0845 940E07E2 CALL _isspace
0847 3000 CPI R16,0
0848 0701 CPC R16,R17
0849 F031 BEQ 0x0850
084A 2D0C MOV R16,R12
084B 2FE6 MOV R30,R22
084C 2FF7 MOV R31,R23
084D 940E039D CALL xicall
084F C00F RJMP 0x085F
0850 2FE4 MOV R30,R20
0851 2FF5 MOV R31,R21
0852 92C1 ST R12,Z+
0853 2F4E MOV R20,R30
0854 2F5F MOV R21,R31
0855 2DEA MOV R30,R10
0856 2DFB MOV R31,R11
0857 940E039D CALL xicall
0859 2E20 MOV R2,R16
085A 2433 CLR R3
085B 2CC2 MOV R12,R2
085C 2CD3 MOV R13,R3
085D 2300 TST R16
085E F721 BNE 0x0843
085F 2422 CLR R2
0860 2FE4 MOV R30,R20
0861 2FF5 MOV R31,R21
0862 8220 STD Z+0,R2
0863 940E0378 CALL pop_gset4
0865 9508 RET
0866 940E037E CALL push_gset5
0868 2EA2 MOV R10,R18
0869 2EB3 MOV R11,R19
086A 2F40 MOV R20,R16
086B 2F51 MOV R21,R17
086C 856A LDD R22,Y+10
086D 857B LDD R23,Y+11
086E 84CC LDD R12,Y+12
086F 84DD LDD R13,Y+13
0870 C044 RJMP 0x08B5
0871 2D8C MOV R24,R12
0872 2D9D MOV R25,R13
0873 3180 CPI R24,0x10
0874 E0E0 LDI R30,0
0875 079E CPC R25,R30
0876 F469 BNE 0x0884
0877 2D0E MOV R16,R14
0878 2D1F MOV R17,R15
0879 940E07FE CALL _isxdigit
087B 3000 CPI R16,0
087C 0701 CPC R16,R17
087D F591 BNE 0x08B0
087E 2D0E MOV R16,R14
087F 2FE6 MOV R30,R22
0880 2FF7 MOV R31,R23
0881 940E039D CALL xicall
0883 C03C RJMP 0x08C0
0884 2D8C MOV R24,R12
0885 2D9D MOV R25,R13
0886 3088 CPI R24,0x8
0887 E0E0 LDI R30,0
0888 079E CPC R25,R30
0889 F499 BNE 0x089D
088A 2D0E MOV R16,R14
088B 2D1F MOV R17,R15
088C 940E07C6 CALL _isdigit
088E 3000 CPI R16,0
088F 0701 CPC R16,R17
0890 F031 BEQ 0x0897
0891 2D8E MOV R24,R14
0892 2D9F MOV R25,R15
0893 3388 CPI R24,0x38
0894 E0E0 LDI R30,0
0895 079E CPC R25,R30
0896 F0CC BLT 0x08B0
0897 2D0E MOV R16,R14
0898 2FE6 MOV R30,R22
0899 2FF7 MOV R31,R23
089A 940E039D CALL xicall
089C C023 RJMP 0x08C0
089D 2D0E MOV R16,R14
089E 2D1F MOV R17,R15
089F 940E07C6 CALL _isdigit
08A1 3000 CPI R16,0
08A2 0701 CPC R16,R17
08A3 F461 BNE 0x08B0
08A4 2D8E MOV R24,R14
08A5 2D9F MOV R25,R15
08A6 328D CPI R24,0x2D
08A7 E0E0 LDI R30,0
08A8 079E CPC R25,R30
08A9 F031 BEQ 0x08B0
08AA 2F08 MOV R16,R24
08AB 2FE6 MOV R30,R22
08AC 2FF7 MOV R31,R23
08AD 940E039D CALL xicall
08AF C010 RJMP 0x08C0
08B0 2FE4 MOV R30,R20
08B1 2FF5 MOV R31,R21
08B2 92E1 ST R14,Z+
08B3 2F4E MOV R20,R30
08B4 2F5F MOV R21,R31
08B5 2DEA MOV R30,R10
08B6 2DFB MOV R31,R11
08B7 940E039D CALL xicall
08B9 2E20 MOV R2,R16
08BA 2433 CLR R3
08BB 2CE2 MOV R14,R2
08BC 2CF3 MOV R15,R3
08BD 2300 TST R16
08BE F009 BEQ 0x08C0
08BF CFB1 RJMP 0x0871
08C0 2422 CLR R2
08C1 2FE4 MOV R30,R20
08C2 2FF5 MOV R31,R21
08C3 8220 STD Z+0,R2
08C4 940E037B CALL pop_gset5
08C6 9508 RET
__scanf:
08C7 940E0336 CALL push_arg4
08C9 940E037E CALL push_gset5
08CB 9761 SBIW R28,0x11
08CC 2400 CLR R0
08CD 2411 CLR R1
08CE 8A18 STD Y+16,R1
08CF 860F STD Y+15,R0
08D0 C118 RJMP 0x09E9
08D1 2D8A MOV R24,R10
08D2 2D9B MOV R25,R11
08D3 3285 CPI R24,0x25
08D4 E0E0 LDI R30,0
08D5 079E CPC R25,R30
08D6 F009 BEQ 0x08D8
08D7 C0E9 RJMP 0x09C1
08D8 8DEF LDD R30,Y+31
08D9 A1F8 LDD R31,Y+32
08DA 8180 LDD R24,Z+0
08DB 368C CPI R24,0x6C
08DC F451 BNE 0x08E7
08DD E081 LDI R24,1
08DE E090 LDI R25,0
08DF 2EC8 MOV R12,R24
08E0 2ED9 MOV R13,R25
08E1 2F8E MOV R24,R30
08E2 2F9F MOV R25,R31
08E3 9601 ADIW R24,1
08E4 A398 STD Y+32,R25
08E5 8F8F STD Y+31,R24
08E6 C002 RJMP 0x08E9
08E7 24CC CLR R12
08E8 24DD CLR R13
08E9 A189 LDD R24,Y+33
08EA A19A LDD R25,Y+34
08EB 9602 ADIW R24,2
08EC A39A STD Y+34,R25
08ED A389 STD Y+33,R24
08EE 2FE8 MOV R30,R24
08EF 2FF9 MOV R31,R25
08F0 9732 SBIW R30,2
08F1 80E0 LDD R14,Z+0
08F2 80F1 LDD R15,Z+1
08F3 8DEF LDD R30,Y+31
08F4 A1F8 LDD R31,Y+32
08F5 8140 LDD R20,Z+0
08F6 2755 CLR R21
08F7 3643 CPI R20,0x63
08F8 E0E0 LDI R30,0
08F9 075E CPC R21,R30
08FA F131 BEQ 0x0921
08FB 3644 CPI R20,0x64
08FC E0E0 LDI R30,0
08FD 075E CPC R21,R30
08FE F409 BNE 0x0900
08FF C06C RJMP 0x096C
0900 E684 LDI R24,0x64
0901 E090 LDI R25,0
0902 1784 CP R24,R20
0903 0795 CPC R25,R21
0904 F02C BLT 0x090A
0905 3548 CPI R20,0x58
0906 E0E0 LDI R30,0
0907 075E CPC R21,R30
0908 F159 BEQ 0x0934
0909 C0AD RJMP 0x09B7
090A 364F CPI R20,0x6F
090B E0E0 LDI R30,0
090C 075E CPC R21,R30
090D F101 BEQ 0x092E
090E 364F CPI R20,0x6F
090F E0E0 LDI R30,0
0910 075E CPC R21,R30
0911 F40C BGE 0x0913
0912 C0A4 RJMP 0x09B7
0913 3743 CPI R20,0x73
0914 E0E0 LDI R30,0
0915 075E CPC R21,R30
0916 F409 BNE 0x0918
0917 C090 RJMP 0x09A8
0918 3745 CPI R20,0x75
0919 E0E0 LDI R30,0
091A 075E CPC R21,R30
091B F0A9 BEQ 0x0931
091C 3748 CPI R20,0x78
091D E0E0 LDI R30,0
091E 075E CPC R21,R30
091F F0A1 BEQ 0x0934
0920 C096 RJMP 0x09B7
0921 8DEB LDD R30,Y+27
0922 8DFC LDD R31,Y+28
0923 940E039D CALL xicall
0925 2DEE MOV R30,R14
0926 2DFF MOV R31,R15
0927 8300 STD Z+0,R16
0928 858F LDD R24,Y+15
0929 8998 LDD R25,Y+16
092A 9601 ADIW R24,1
092B 8B98 STD Y+16,R25
092C 878F STD Y+15,R24
092D C08D RJMP 0x09BB
092E E068 LDI R22,0x8
092F E070 LDI R23,0
0930 C005 RJMP 0x0936
0931 E06A LDI R22,0xA
0932 E070 LDI R23,0
0933 C002 RJMP 0x0936
0934 E160 LDI R22,0x10
0935 E070 LDI R23,0
0936 858F LDD R24,Y+15
0937 8998 LDD R25,Y+16
0938 9601 ADIW R24,1
0939 8B98 STD Y+16,R25
093A 878F STD Y+15,R24
093B 837B STD Y+3,R23
093C 836A STD Y+2,R22
093D 8C0D LDD R0,Y+29
093E 8C1E LDD R1,Y+30
093F 8219 STD Y+1,R1
0940 8208 STD Y+0,R0
0941 8D2B LDD R18,Y+27
0942 8D3C LDD R19,Y+28
0943 2F0C MOV R16,R28
0944 2F1D MOV R17,R29
0945 5F0C SUBI R16,0xFC
0946 4F1F SBCI R17,0xFF
0947 DF1E RCALL 0x0866
0948 20CC TST R12
0949 F411 BNE 0x094C
094A 20DD TST R13
094B F089 BEQ 0x095D
094C 8379 STD Y+1,R23
094D 8368 STD Y+0,R22
094E 2722 CLR R18
094F 2733 CLR R19
0950 2F0C MOV R16,R28
0951 2F1D MOV R17,R29
0952 5F0C SUBI R16,0xFC
0953 4F1F SBCI R17,0xFF
0954 940E0634 CALL _strtoul
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -