📄 1602test.lst
字号:
neg32:
54F 9500 COM R16
550 9510 COM R17
551 9520 COM R18
552 9530 COM R19
553 5F0F SUBI R16,0xFF
554 4F1F SBCI R17,0xFF
555 4F2F SBCI R18,0xFF
556 4F3F SBCI R19,0xFF
557 9508 RET
long_prolog:
558 928A ST R8,-Y
559 929A ST R9,-Y
55A 92AA ST R10,-Y
55B 92BA ST R11,-Y
55C 93EA ST R30,-Y
55D 938A ST R24,-Y
55E 939A ST R25,-Y
55F 93AA ST R26,-Y
560 93BA ST R27,-Y
561 8589 LDD R24,Y+9
562 859A LDD R25,Y+10
563 85AB LDD R26,Y+11
564 85BC LDD R27,Y+12
565 9508 RET
long_epilog:
566 91B9 LD R27,Y+
567 91A9 LD R26,Y+
568 9199 LD R25,Y+
569 9189 LD R24,Y+
56A 91E9 LD R30,Y+
56B 90B9 LD R11,Y+
56C 90A9 LD R10,Y+
56D 9099 LD R9,Y+
56E 9089 LD R8,Y+
56F 9624 ADIW R28,4
570 9508 RET
tstzero1:
571 27EE CLR R30
572 2BE0 OR R30,R16
573 2BE1 OR R30,R17
574 2BE2 OR R30,R18
575 2BE3 OR R30,R19
576 9508 RET
tstzero2:
577 27EE CLR R30
578 2BE8 OR R30,R24
579 2BE9 OR R30,R25
57A 2BEA OR R30,R26
57B 2BEB OR R30,R27
57C 9508 RET
lpm32:
57D 93EA ST R30,-Y
57E 93FA ST R31,-Y
57F 920A ST R0,-Y
580 2FE0 MOV R30,R16
581 2FF1 MOV R31,R17
582 95C8 LPM
583 2D00 MOV R16,R0
584 9631 ADIW R30,1
585 95C8 LPM
586 2D10 MOV R17,R0
587 9631 ADIW R30,1
588 95C8 LPM
589 2D20 MOV R18,R0
58A 9631 ADIW R30,1
58B 95C8 LPM
58C 2D30 MOV R19,R0
58D 9009 LD R0,Y+
58E 91F9 LD R31,Y+
58F 91E9 LD R30,Y+
590 9508 RET
fpsub:
591 9468 BSET 6
592 C001 RJMP fpadd_alt
fpadd:
593 94E8 BCLR 6
fpadd_alt:
594 940E 06C5 CALL saveR8toR25
596 940E 065B CALL unpacks
598 F409 BNE 0x059A
599 C047 RJMP 0x05E1
59A 2EE6 MOV R14,R22
59B 2ED5 MOV R13,R21
59C 2EC4 MOV R12,R20
59D 2EB3 MOV R11,R19
59E 2EA2 MOV R10,R18
59F 2E91 MOV R9,R17
5A0 2E80 MOV R8,R16
5A1 8100 LDD R16,Z+0
5A2 8111 LDD R17,Z+1
5A3 8122 LDD R18,Z+2
5A4 8133 LDD R19,Z+3
5A5 940E 065B CALL unpacks
5A7 F409 BNE 0x05A9
5A8 C043 RJMP 0x05EC
5A9 2F84 MOV R24,R20
5AA 2F95 MOV R25,R21
5AB 198C SUB R24,R12
5AC 099D SBC R25,R13
5AD F0B9 BEQ 0x05C5
5AE F472 BPL 0x05BD
5AF 9590 COM R25
5B0 9580 COM R24
5B1 9601 ADIW R24,1
5B2 2D4C MOV R20,R12
5B3 2D5D MOV R21,R13
5B4 3188 CPI R24,0x18
5B5 F5B0 BCC 0x05EC
5B6 9535 ASR R19
5B7 9527 ROR R18
5B8 9517 ROR R17
5B9 9507 ROR R16
5BA 9701 SBIW R24,1
5BB F7D1 BNE 0x05B6
5BC C008 RJMP 0x05C5
5BD 3188 CPI R24,0x18
5BE F510 BCC 0x05E1
5BF 94B5 ASR R11
5C0 94A7 ROR R10
5C1 9497 ROR R9
5C2 9487 ROR R8
5C3 9701 SBIW R24,1
5C4 F7D1 BNE 0x05BF
5C5 2766 CLR R22
5C6 F02E BRTS 0x05CC
5C7 0D08 ADD R16,R8
5C8 1D19 ADC R17,R9
5C9 1D2A ADC R18,R10
5CA 1D3B ADC R19,R11
5CB C009 RJMP 0x05D5
5CC 1A80 SUB R8,R16
5CD 0A91 SBC R9,R17
5CE 0AA2 SBC R10,R18
5CF 0AB3 SBC R11,R19
5D0 2D08 MOV R16,R8
5D1 2D19 MOV R17,R9
5D2 2D2A MOV R18,R10
5D3 2D3B MOV R19,R11
5D4 2333 TST R19
5D5 F41A BPL 0x05D9
5D6 940E 054F CALL neg32
5D8 E860 LDI R22,0x80
5D9 940E 0680 CALL normalize_and_pack
5DB C002 RJMP 0x05DE
5DC 940E 06AE CALL pack
5DE 940E 06D4 CALL restoreR8toR25
5E0 9508 RET
5E1 8100 LDD R16,Z+0
5E2 8111 LDD R17,Z+1
5E3 8122 LDD R18,Z+2
5E4 8133 LDD R19,Z+3
5E5 F7C6 BRTC 0x05DE
5E6 940E 0663 CALL tstR16_R19
5E8 F3A9 BEQ 0x05DE
5E9 E840 LDI R20,0x80
5EA 2734 EOR R19,R20
5EB CFF2 RJMP 0x05DE
5EC 2D08 MOV R16,R8
5ED 2D19 MOV R17,R9
5EE 2D2A MOV R18,R10
5EF 2D3B MOV R19,R11
5F0 2D4C MOV R20,R12
5F1 2D5D MOV R21,R13
5F2 2D6E MOV R22,R14
5F3 2333 TST R19
5F4 F73A BPL 0x05DC
5F5 940E 054F CALL neg32
5F7 E860 LDI R22,0x80
5F8 CFE3 RJMP 0x05DC
fpadd2:
5F9 93FA ST R31,-Y
5FA 93EA ST R30,-Y
5FB 2FEC MOV R30,R28
5FC 2FFD MOV R31,R29
5FD 9632 ADIW R30,2
5FE 940E 0593 CALL fpadd
600 91E9 LD R30,Y+
601 91F9 LD R31,Y+
602 9624 ADIW R28,4
603 9508 RET
fpsub2:
604 93FA ST R31,-Y
605 93EA ST R30,-Y
606 2FEC MOV R30,R28
607 2FFD MOV R31,R29
608 9632 ADIW R30,2
609 940E 0591 CALL fpsub
60B 91E9 LD R30,Y+
60C 91F9 LD R31,Y+
60D 9624 ADIW R28,4
60E 9508 RET
fpint:
60F 934A ST R20,-Y
610 935A ST R21,-Y
611 936A ST R22,-Y
612 940E 066B CALL unpacku
614 F0F1 BEQ 0x0633
615 2355 TST R21
616 F0C2 BMI 0x062F
617 314F CPI R20,0x1F
618 F4A8 BCC 0x062E
619 3147 CPI R20,0x17
61A F0C1 BEQ 0x0633
61B F450 BCC 0x0626
61C 9541 NEG R20
61D 5E49 SUBI R20,0xE9
61E C005 RJMP 0x0624
61F 9535 ASR R19
620 9527 ROR R18
621 9517 ROR R17
622 9507 ROR R16
623 954A DEC R20
624 F7D1 BNE 0x061F
625 C00D RJMP 0x0633
626 5147 SUBI R20,0x17
627 0F00 LSL R16
628 1F11 ROL R17
629 1F22 ROL R18
62A 1F33 ROL R19
62B 954A DEC R20
62C F7D1 BNE 0x0627
62D C005 RJMP 0x0633
62E E73F LDI R19,0x7F
62F 2F23 MOV R18,R19
630 2F13 MOV R17,R19
631 2F03 MOV R16,R19
632 C004 RJMP 0x0637
633 2366 TST R22
634 F011 BEQ 0x0637
635 940E 054F CALL neg32
637 9169 LD R22,Y+
638 9159 LD R21,Y+
639 9149 LD R20,Y+
63A 9508 RET
uint2fp:
63B 9468 BSET 6
63C C001 RJMP 0x063E
int2fp:
63D 94E8 BCLR 6
63E 2722 CLR R18
63F 2733 CLR R19
640 F046 BRTS 0x0649
641 FD17 SBRC R17,7
642 9520 COM R18
643 FD17 SBRC R17,7
644 9530 COM R19
645 C003 RJMP 0x0649
ulong2fp:
646 9468 BSET 6
647 C001 RJMP 0x0649
long2fp:
648 94E8 BCLR 6
649 934A ST R20,-Y
64A 935A ST R21,-Y
64B 936A ST R22,-Y
64C E147 LDI R20,0x17
64D 2766 CLR R22
64E 2755 CLR R21
64F F02E BRTS 0x0655
650 2333 TST R19
651 F41A BPL 0x0655
652 940E 054F CALL neg32
654 E860 LDI R22,0x80
655 940E 0680 CALL normalize_and_pack
657 9169 LD R22,Y+
658 9159 LD R21,Y+
659 9149 LD R20,Y+
65A 9508 RET
unpacks:
65B D00F RCALL unpacku
65C F029 BEQ 0x0662
65D 2366 TST R22
65E F011 BEQ 0x0661
65F 940E 054F CALL neg32
661 9498 BCLR 1
662 9508 RET
tstR16_R19:
663 2300 TST R16
664 F429 BNE 0x066A
665 2311 TST R17
666 F419 BNE 0x066A
667 2322 TST R18
668 F409 BNE 0x066A
669 2333 TST R19
66A 9508 RET
unpacku:
66B DFF7 RCALL tstR16_R19
66C F079 BEQ 0x067C
66D 2F63 MOV R22,R19
66E 7860 ANDI R22,0x80
66F 0F22 LSL R18
670 1F33 ROL R19
671 2F43 MOV R20,R19
672 E75F LDI R21,0x7F
673 1B45 SUB R20,R21
674 2755 CLR R21
675 4050 SBCI R21,0
676 9526 LSR R18
677 E830 LDI R19,0x80
678 2B23 OR R18,R19
679 2733 CLR R19
67A 9498 BCLR 1
67B 9508 RET
67C 2744 CLR R20
67D 2755 CLR R21
67E 2766 CLR R22
67F 9508 RET
normalize_and_pack:
680 DFE2 RCALL tstR16_R19
681 F121 BEQ 0x06A6
682 939A ST R25,-Y
683 938A ST R24,-Y
684 E78E LDI R24,0x7E
685 E090 LDI R25,0
686 2333 TST R19
687 F051 BEQ 0x0692
688 9536 LSR R19
689 9527 ROR R18
68A 9517 ROR R17
68B 9507 ROR R16
68C 1748 CP R20,R24
68D 0759 CPC R21,R25
68E F4C4 BGE 0x06A7
68F 5F4F SUBI R20,0xFF
690 4F5F SBCI R21,0xFF
691 CFF4 RJMP 0x0686
692 9580 COM R24
693 9590 COM R25
694 9601 ADIW R24,1
695 2322 TST R18
696 F0AA BMI 0x06AC
697 0F00 LSL R16
698 1F11 ROL R17
699 1F22 ROL R18
69A 1748 CP R20,R24
69B 0759 CPC R21,R25
69C F01C BLT 0x06A0
69D 5041 SUBI R20,1
69E 4050 SBCI R21,0
69F CFF5 RJMP 0x0695
6A0 2700 CLR R16
6A1 2711 CLR R17
6A2 2722 CLR R18
6A3 2733 CLR R19
6A4 9189 LD R24,Y+
6A5 9199 LD R25,Y+
6A6 9508 RET
6A7 2733 CLR R19
6A8 EF0F LDI R16,0xFF
6A9 2F10 MOV R17,R16
6AA E72F LDI R18,0x7F
6AB 2F32 MOV R19,R18
6AC 9189 LD R24,Y+
6AD 9199 LD R25,Y+
pack:
6AE DFB4 RCALL tstR16_R19
6AF F039 BEQ 0x06B7
6B0 5841 SUBI R20,0x81
6B1 4F5F SBCI R21,0xFF
6B2 2F34 MOV R19,R20
6B3 0F22 LSL R18
6B4 9536 LSR R19
6B5 9527 ROR R18
6B6 2B36 OR R19,R22
6B7 9508 RET
fpneg:
6B8 DFAA RCALL tstR16_R19
6B9 F021 BEQ 0x06BE
6BA 930F PUSH R16
6BB E800 LDI R16,0x80
6BC 2730 EOR R19,R16
6BD 910F POP R16
6BE 9508 RET
fpneg2:
6BF DFF8 RCALL fpneg
6C0 933A ST R19,-Y
6C1 932A ST R18,-Y
6C2 931A ST R17,-Y
6C3 930A ST R16,-Y
6C4 9508 RET
saveR8toR25:
6C5 928A ST R8,-Y
6C6 929A ST R9,-Y
6C7 92AA ST R10,-Y
6C8 92BA ST R11,-Y
6C9 92CA ST R12,-Y
6CA 92DA ST R13,-Y
6CB 92EA ST R14,-Y
6CC 92FA ST R15,-Y
6CD 934A ST R20,-Y
6CE 935A ST R21,-Y
6CF 936A ST R22,-Y
6D0 937A ST R23,-Y
6D1 938A ST R24,-Y
6D2 939A ST R25,-Y
6D3 9508 RET
restoreR8toR25:
6D4 9199 LD R25,Y+
6D5 9189 LD R24,Y+
6D6 9179 LD R23,Y+
6D7 9169 LD R22,Y+
6D8 9159 LD R21,Y+
6D9 9149 LD R20,Y+
6DA 90F9 LD R15,Y+
6DB 90E9 LD R14,Y+
6DC 90D9 LD R13,Y+
6DD 90C9 LD R12,Y+
6DE 90B9 LD R11,Y+
6DF 90A9 LD R10,Y+
6E0 9099 LD R9,Y+
6E1 9089 LD R8,Y+
6E2 9508 RET
fpmule:
6E3 940E 06C5 CALL saveR8toR25
6E5 93AA ST R26,-Y
6E6 93BA ST R27,-Y
6E7 940E 066B CALL unpacku
6E9 F1D1 BEQ 0x0724
6EA 2EE6 MOV R14,R22
6EB 2ED5 MOV R13,R21
6EC 2EC4 MOV R12,R20
6ED 2EB3 MOV R11,R19
6EE 2EA2 MOV R10
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -