📄 test.lst
字号:
04AF 2EC8 MOV R12,R24
04B0 2ED9 MOV R13,R25
04B1 CFD9 RJMP 0x048B
04B2 898E LDD R24,Y+22
04B3 899F LDD R25,Y+23
04B4 9601 ADIW R24,1
04B5 8B9F STD Y+23,R25
04B6 8B8E STD Y+22,R24
04B7 89EE LDD R30,Y+22
04B8 89FF LDD R31,Y+23
04B9 8020 LDD R2,Z+0
04BA 2022 TST R2
04BB F009 BEQ 0x04BD
04BC CE77 RJMP 0x0334
04BD 810E LDD R16,Y+6
04BE 811F LDD R17,Y+7
04BF 962A ADIW R28,0xA
04C0 D04D RCALL pop_gset5
04C1 9624 ADIW R28,4
04C2 9508 RET
_strcpy:
04C3 2FA0 MOV R26,R16
04C4 2FB1 MOV R27,R17
04C5 2FE2 MOV R30,R18
04C6 2FF3 MOV R31,R19
04C7 9001 LD R0,Z+
04C8 920D ST R0,X+
04C9 2000 TST R0
04CA F7E1 BNE 0x04C7
04CB 9508 RET
push_arg4:
04CC 933A ST R19,-Y
04CD 932A ST R18,-Y
push_arg2:
04CE 931A ST R17,-Y
04CF 930A ST R16,-Y
04D0 9508 RET
mod16s:
04D1 9468 BSET 6
04D2 92DA ST R13,-Y
04D3 2ED1 MOV R13,R17
04D4 C004 RJMP 0x04D9
div16s:
04D5 94E8 BCLR 6
04D6 92DA ST R13,-Y
04D7 2ED1 MOV R13,R17
04D8 26D3 EOR R13,R19
04D9 FF17 SBRS R17,7
04DA C004 RJMP 0x04DF
04DB 9510 COM R17
04DC 9500 COM R16
04DD 5F0F SUBI R16,0xFF
04DE 4F1F SBCI R17,0xFF
04DF FF37 SBRS R19,7
04E0 C004 RJMP 0x04E5
04E1 9530 COM R19
04E2 9520 COM R18
04E3 5F2F SUBI R18,0xFF
04E4 4F3F SBCI R19,0xFF
04E5 D00B RCALL xdiv16u
04E6 FED7 SBRS R13,7
04E7 C004 RJMP 0x04EC
04E8 9510 COM R17
04E9 9500 COM R16
04EA 5F0F SUBI R16,0xFF
04EB 4F1F SBCI R17,0xFF
04EC 90D9 LD R13,Y+
04ED 9508 RET
mod16u:
04EE 9468 BSET 6
04EF C001 RJMP xdiv16u
div16u:
04F0 94E8 BCLR 6
xdiv16u:
04F1 92EA ST R14,-Y
04F2 92FA ST R15,-Y
04F3 938A ST R24,-Y
04F4 24EE CLR R14
04F5 24FF CLR R15
04F6 E180 LDI R24,0x10
04F7 0F00 LSL R16
04F8 1F11 ROL R17
04F9 1CEE ROL R14
04FA 1CFF ROL R15
04FB 16E2 CP R14,R18
04FC 06F3 CPC R15,R19
04FD F018 BCS 0x0501
04FE 1AE2 SUB R14,R18
04FF 0AF3 SBC R15,R19
0500 9503 INC R16
0501 958A DEC R24
0502 F7A1 BNE 0x04F7
0503 F416 BRTC 0x0506
0504 2D0E MOV R16,R14
0505 2D1F MOV R17,R15
0506 9189 LD R24,Y+
0507 90F9 LD R15,Y+
0508 90E9 LD R14,Y+
0509 9508 RET
pop_gset2:
050A E0E2 LDI R30,2
050B C010 RJMP pop
pop_gset4:
050C E0E8 LDI R30,0x8
050D C00E RJMP pop
pop_gset5:
050E 27EE CLR R30
050F C00C RJMP pop
push_gset5:
0510 92FA ST R15,-Y
0511 92EA ST R14,-Y
push_gset4:
0512 92DA ST R13,-Y
0513 92CA ST R12,-Y
push_gset3:
0514 92BA ST R11,-Y
0515 92AA ST R10,-Y
push_gset2:
0516 937A ST R23,-Y
0517 936A ST R22,-Y
push_gset1:
0518 935A ST R21,-Y
0519 934A ST R20,-Y
051A 9508 RET
pop_gset1:
051B E0E1 LDI R30,1
pop:
051C 9149 LD R20,Y+
051D 9159 LD R21,Y+
051E FDE0 SBRC R30,0
051F 9508 RET
0520 9169 LD R22,Y+
0521 9179 LD R23,Y+
0522 FDE1 SBRC R30,1
0523 9508 RET
0524 90A9 LD R10,Y+
0525 90B9 LD R11,Y+
0526 FDE2 SBRC R30,2
0527 9508 RET
0528 90C9 LD R12,Y+
0529 90D9 LD R13,Y+
052A FDE3 SBRC R30,3
052B 9508 RET
052C 90E9 LD R14,Y+
052D 90F9 LD R15,Y+
052E 9508 RET
xicall:
052F 920A ST R0,-Y
0530 95C8 LPM
0531 920A ST R0,-Y
0532 9631 ADIW R30,1
0533 95C8 LPM
0534 2DF0 MOV R31,R0
0535 91E9 LD R30,Y+
0536 9009 LD R0,Y+
0537 9409 IJMP
_putchar:
0538 DFDF RCALL push_gset1
0539 2F40 MOV R20,R16
053A 90200172 LDS R2,_textmode
053C 90300173 LDS R3,_textmode+1
053E 2022 TST R2
053F F411 BNE 0x0542
0540 2033 TST R3
0541 F021 BEQ 0x0546
0542 304A CPI R20,0xA
0543 F411 BNE 0x0546
0544 E00D LDI R16,0xD
0545 DFF2 RCALL _putchar
0546 9B5D SBIS 0x0B,5
0547 CFFE RJMP 0x0546
0548 B94C OUT 0x0C,R20
0549 2F04 MOV R16,R20
054A 2711 CLR R17
054B DFCF RCALL pop_gset1
054C 9508 RET
__va_start:
054D 2F82 MOV R24,R18
054E 2F93 MOV R25,R19
054F 9601 ADIW R24,1
0550 7F8E ANDI R24,0xFE
0551 0F80 ADD R24,R16
0552 1F91 ADC R25,R17
0553 2F08 MOV R16,R24
0554 2F19 MOV R17,R25
0555 9508 RET
_itoa:
0556 DFB9 RCALL push_gset5
0557 2EC2 MOV R12,R18
0558 2ED3 MOV R13,R19
0559 2F40 MOV R20,R16
055A 2F51 MOV R21,R17
055B 97A2 SBIW R28,0x22
055C A4AC LDD R10,Y+44
055D A4BD LDD R11,Y+45
055E 2D8C MOV R24,R12
055F 2D9D MOV R25,R13
0560 3080 CPI R24,0
0561 E0E0 LDI R30,0
0562 079E CPC R25,R30
0563 F444 BGE 0x056C
0564 E061 LDI R22,1
0565 9580 COM R24
0566 9590 COM R25
0567 5F8F SUBI R24,0xFF
0568 4F9F SBCI R25,0xFF
0569 2EC8 MOV R12,R24
056A 2ED9 MOV R13,R25
056B C001 RJMP 0x056D
056C 2766 CLR R22
056D 2422 CLR R2
056E A229 STD Y+33,R2
056F 2F8C MOV R24,R28
0570 2F9D MOV R25,R29
0571 9681 ADIW R24,0x21
0572 2EE8 MOV R14,R24
0573 2EF9 MOV R15,R25
0574 2D8E MOV R24,R14
0575 2D9F MOV R25,R15
0576 9701 SBIW R24,1
0577 2E28 MOV R2,R24
0578 2E39 MOV R3,R25
0579 2EE8 MOV R14,R24
057A 2EF9 MOV R15,R25
057B 2D2A MOV R18,R10
057C 2D3B MOV R19,R11
057D 2D0C MOV R16,R12
057E 2D1D MOV R17,R13
057F DF51 RCALL mod16s
0580 2FE0 MOV R30,R16
0581 2FF1 MOV R31,R17
0582 E08D LDI R24,0xD
0583 E091 LDI R25,1
0584 0FE8 ADD R30,R24
0585 1FF9 ADC R31,R25
0586 8040 LDD R4,Z+0
0587 2DE2 MOV R30,R2
0588 2DF3 MOV R31,R3
0589 8240 STD Z+0,R4
058A 2D2A MOV R18,R10
058B 2D3B MOV R19,R11
058C 2D0C MOV R16,R12
058D 2D1D MOV R17,R13
058E DF46 RCALL div16s
058F 2EC0 MOV R12,R16
0590 2ED1 MOV R13,R17
0591 20CC TST R12
0592 F709 BNE 0x0574
0593 20DD TST R13
0594 F6F9 BNE 0x0574
0595 2366 TST R22
0596 F059 BEQ 0x05A2
0597 2D8E MOV R24,R14
0598 2D9F MOV R25,R15
0599 9701 SBIW R24,1
059A 2E28 MOV R2,R24
059B 2E39 MOV R3,R25
059C 2EE8 MOV R14,R24
059D 2EF9 MOV R15,R25
059E E28D LDI R24,0x2D
059F 2DE2 MOV R30,R2
05A0 2DF3 MOV R31,R3
05A1 8380 STD Z+0,R24
05A2 2D2E MOV R18,R14
05A3 2D3F MOV R19,R15
05A4 2F04 MOV R16,R20
05A5 2F15 MOV R17,R21
05A6 DF1C RCALL _strcpy
05A7 96A2 ADIW R28,0x22
05A8 DF65 RCALL pop_gset5
05A9 9508 RET
_utoa:
05AA DF67 RCALL push_gset4
05AB 2EA2 MOV R10,R18
05AC 2EB3 MOV R11,R19
05AD 2EC0 MOV R12,R16
05AE 2ED1 MOV R13,R17
05AF 97A2 SBIW R28,0x22
05B0 A56A LDD R22,Y+42
05B1 A57B LDD R23,Y+43
05B2 2422 CLR R2
05B3 A229 STD Y+33,R2
05B4 2F4C MOV R20,R28
05B5 2F5D MOV R21,R29
05B6 5D4F SUBI R20,0xDF
05B7 4F5F SBCI R21,0xFF
05B8 2F84 MOV R24,R20
05B9 2F95 MOV R25,R21
05BA 9701 SBIW R24,1
05BB 2E28 MOV R2,R24
05BC 2E39 MOV R3,R25
05BD 2F48 MOV R20,R24
05BE 2F59 MOV R21,R25
05BF 2F26 MOV R18,R22
05C0 2F37 MOV R19,R23
05C1 2D0A MOV R16,R10
05C2 2D1B MOV R17,R11
05C3 DF2A RCALL mod16u
05C4 2FE0 MOV R30,R16
05C5 2FF1 MOV R31,R17
05C6 E382 LDI R24,0x32
05C7 E091 LDI R25,1
05C8 0FE8 ADD R30,R24
05C9 1FF9 ADC R31,R25
05CA 8040 LDD R4,Z+0
05CB 2DE2 MOV R30,R2
05CC 2DF3 MOV R31,R3
05CD 8240 STD Z+0,R4
05CE 2F26 MOV R18,R22
05CF 2F37 MOV R19,R23
05D0 2D0A MOV R16,R10
05D1 2D1B MOV R17,R11
05D2 DF1D RCALL div16u
05D3 2EA0 MOV R10,R16
05D4 2EB1 MOV R11,R17
05D5 20AA TST R10
05D6 F709 BNE 0x05B8
05D7 20BB TST R11
05D8 F6F9 BNE 0x05B8
05D9 2F24 MOV R18,R20
05DA 2F35 MOV R19,R21
05DB 2D0C MOV R16,R12
05DC 2D1D MOV R17,R13
05DD DEE5 RCALL _strcpy
05DE 96A2 ADIW R28,0x22
05DF DF2C RCALL pop_gset4
05E0 9508 RET
_islower:
05E1 E58E LDI R24,0x5E
05E2 E090 LDI R25,0
05E3 2E20 MOV R2,R16
05E4 2E31 MOV R3,R17
05E5 0E28 ADD R2,R24
05E6 1E39 ADC R3,R25
05E7 2DE2 MOV R30,R2
05E8 2DF3 MOV R31,R3
05E9 95C8 LPM
05EA 2D00 MOV R16,R0
05EB 2711 CLR R17
05EC 7002 ANDI R16,2
05ED 7010 ANDI R17,0
05EE 9508 RET
_toupper:
05EF DF28 RCALL push_gset1
05F0 2F40 MOV R20,R16
05F1 2F51 MOV R21,R17
05F2 2F04 MOV R16,R20
05F3 2F15 MOV R17,R21
05F4 DFEC RCALL _islower
05F5 3000 CPI R16,0
05F6 0701 CPC R16,R17
05F7 F039 BEQ 0x05FF
05F8 2F04 MOV R16,R20
05F9 2F15 MOV R17,R21
05FA 5601 SUBI R16,0x61
05FB 4010 SBCI R17,0
05FC 5B0F SUBI R16,0xBF
05FD 4F1F SBCI R17,0xFF
05FE C002 RJMP 0x0601
05FF 2F04 MOV R16,R20
0600 2F15 MOV R17,R21
0601 DF19 RCALL pop_gset1
0602 9508 RET
_printf:
0603 DEC8 RCALL push_arg4
0604 DF13 RCALL push_gset1
0605 9722 SBIW R28,2
0606 E022 LDI R18,2
0607 E030 LDI R19,0
0608 2F0C MOV R16,R28
0609 2F1D MOV R17,R29
060A 5F0C SUBI R16,0xFC
060B 4F1F SBCI R17,0xFF
060C DF40 RCALL __va_start
060D 2F40 MOV R20,R16
060E 2F51 MOV R21,R17
060F 8359 STD Y+1,R21
0610 8348 STD Y+0,R20
0611 812C LDD R18,Y+4
0612 813D LDD R19,Y+5
0613 E202 LDI R16,0x22
0614 E010 LDI R17,0
0615 DD16 RCALL __print
0616 2F40 MOV R20,R16
0617 2F51 MOV R21,R17
0618 9622 ADIW R28,2
0619 DF01 RCALL pop_gset1
061A 9624 ADIW R28,4
061B 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -