📄 fft2.lis
字号:
04F4 3383 std z+3,R19
04F6 .dbline 48
04F6 04E0 ldi R16,4
04F8 10E0 ldi R17,0
04FA 9A01 movw R18,R20
04FC 0E940000 xcall empy16s
0500 C801 movw R24,R16
0502 8C0D add R24,R12
0504 9D1D adc R25,R13
0506 0496 adiw R24,4
0508 1C01 movw R2,R24
050A FE01 movw R30,R28
050C 40A0 ldd R4,z+32
050E 51A0 ldd R5,z+33
0510 62A0 ldd R6,z+34
0512 73A0 ldd R7,z+35
0514 7A92 st -y,R7
0516 6A92 st -y,R6
0518 5A92 st -y,R5
051A 4A92 st -y,R4
051C FC01 movw R30,R24
051E 4080 ldd R4,z+0
0520 5180 ldd R5,z+1
0522 6280 ldd R6,z+2
0524 7380 ldd R7,z+3
0526 7A92 st -y,R7
0528 6A92 st -y,R6
052A 5A92 st -y,R5
052C 4A92 st -y,R4
052E 0E940000 xcall sub32f
0532 F101 movw R30,R2
0534 0083 std z+0,R16
0536 1183 std z+1,R17
0538 2283 std z+2,R18
053A 3383 std z+3,R19
053C .dbline 49
053C L20:
053C .dbline 41
053C 4E5F subi R20,254 ; offset = 2
053E 5F4F sbci R21,255
0540 L22:
0540 .dbline 41
0540 8CAD ldd R24,y+60
0542 9DAD ldd R25,y+61
0544 0297 sbiw R24,2
0546 8417 cp R24,R20
0548 9507 cpc R25,R21
054A 0CF0 brlt X5
054C 4DCF xjmp L19
054E X5:
054E .dbline 50
054E ; {
054E ; vr = fr[it];
054E ; vi = fi[it];
054E ; fr[it] = vr + fr[it + 1];
054E ; fi[it] = vi + fi[it + 1];
054E ; fr[it + 1] = vr - fr[it + 1];
054E ; fi[it + 1] = vi - fi[it + 1];
054E ; }
054E ; m = n / 2;
054E 22E0 ldi R18,2
0550 30E0 ldi R19,0
0552 0CAD ldd R16,y+60
0554 1DAD ldd R17,y+61
0556 0E940000 xcall div16s
055A 1B83 std y+3,R17
055C 0A83 std y+2,R16
055E .dbline 51
055E ; nv = 2;
055E 82E0 ldi R24,2
0560 90E0 ldi R25,0
0562 9983 std y+1,R25
0564 8883 std y+0,R24
0566 .dbline 52
0566 ; for(l0 = k - 2;l0 >= 0;l0 --)
0566 8EAD ldd R24,y+62
0568 9FAD ldd R25,y+63
056A 0297 sbiw R24,2
056C 9DA3 std y+37,R25
056E 8CA3 std y+36,R24
0570 F6C1 xjmp L26
0572 L23:
0572 .dbline 53
0572 ; {
0572 .dbline 54
0572 ; m = m / 2;
0572 22E0 ldi R18,2
0574 30E0 ldi R19,0
0576 0A81 ldd R16,y+2
0578 1B81 ldd R17,y+3
057A 0E940000 xcall div16s
057E 1B83 std y+3,R17
0580 0A83 std y+2,R16
0582 .dbline 55
0582 ; nv = 2 * nv;
0582 2881 ldd R18,y+0
0584 3981 ldd R19,y+1
0586 02E0 ldi R16,2
0588 10E0 ldi R17,0
058A 0E940000 xcall empy16s
058E 1983 std y+1,R17
0590 0883 std y+0,R16
0592 .dbline 56
0592 ; for(it = 0;it <= (m - 1) * nv;it = it + nv)
0592 4427 clr R20
0594 5527 clr R21
0596 D2C1 xjmp L30
0598 L27:
0598 .dbline 57
0598 ; for(j = 0;j <= (nv / 2) - 1;j ++)
0598 AA24 clr R10
059A BB24 clr R11
059C BFC1 xjmp L34
059E L31:
059E .dbline 58
059E .dbline 59
059E 0A81 ldd R16,y+2
05A0 1B81 ldd R17,y+3
05A2 9501 movw R18,R10
05A4 0E940000 xcall empy16s
05A8 9801 movw R18,R16
05AA 04E0 ldi R16,4
05AC 10E0 ldi R17,0
05AE 0E940000 xcall empy16s
05B2 F801 movw R30,R16
05B4 08AC ldd R0,y+56
05B6 19AC ldd R1,y+57
05B8 E00D add R30,R0
05BA F11D adc R31,R1
05BC 2080 ldd R2,z+0
05BE 3180 ldd R3,z+1
05C0 4280 ldd R4,z+2
05C2 5380 ldd R5,z+3
05C4 5A92 st -y,R5
05C6 4A92 st -y,R4
05C8 3A92 st -y,R3
05CA 2A92 st -y,R2
05CC 22E0 ldi R18,2
05CE 30E0 ldi R19,0
05D0 ; stack offset 4
05D0 0C81 ldd R16,y+4
05D2 1D81 ldd R17,y+5
05D4 0E940000 xcall div16s
05D8 9A01 movw R18,R20
05DA 2A0D add R18,R10
05DC 3B1D adc R19,R11
05DE 200F add R18,R16
05E0 311F adc R19,R17
05E2 04E0 ldi R16,4
05E4 10E0 ldi R17,0
05E6 0E940000 xcall empy16s
05EA F801 movw R30,R16
05EC EE0D add R30,R14
05EE FF1D adc R31,R15
05F0 2080 ldd R2,z+0
05F2 3180 ldd R3,z+1
05F4 4280 ldd R4,z+2
05F6 5380 ldd R5,z+3
05F8 5A92 st -y,R5
05FA 4A92 st -y,R4
05FC 3A92 st -y,R3
05FE 2A92 st -y,R2
0600 0E940000 xcall empy32f
0604 FE01 movw R30,R28
0606 0087 std z+8,R16
0608 1187 std z+9,R17
060A 2287 std z+10,R18
060C 3387 std z+11,R19
060E .dbline 60
060E 0A81 ldd R16,y+2
0610 1B81 ldd R17,y+3
0612 9501 movw R18,R10
0614 0E940000 xcall empy16s
0618 9801 movw R18,R16
061A 04E0 ldi R16,4
061C 10E0 ldi R17,0
061E 0E940000 xcall empy16s
0622 F801 movw R30,R16
0624 0AAC ldd R0,y+58
0626 1BAC ldd R1,y+59
0628 E00D add R30,R0
062A F11D adc R31,R1
062C 2080 ldd R2,z+0
062E 3180 ldd R3,z+1
0630 4280 ldd R4,z+2
0632 5380 ldd R5,z+3
0634 5A92 st -y,R5
0636 4A92 st -y,R4
0638 3A92 st -y,R3
063A 2A92 st -y,R2
063C 22E0 ldi R18,2
063E 30E0 ldi R19,0
0640 ; stack offset 4
0640 0C81 ldd R16,y+4
0642 1D81 ldd R17,y+5
0644 0E940000 xcall div16s
0648 9A01 movw R18,R20
064A 2A0D add R18,R10
064C 3B1D adc R19,R11
064E 200F add R18,R16
0650 311F adc R19,R17
0652 04E0 ldi R16,4
0654 10E0 ldi R17,0
0656 0E940000 xcall empy16s
065A F801 movw R30,R16
065C EC0D add R30,R12
065E FD1D adc R31,R13
0660 2080 ldd R2,z+0
0662 3180 ldd R3,z+1
0664 4280 ldd R4,z+2
0666 5380 ldd R5,z+3
0668 5A92 st -y,R5
066A 4A92 st -y,R4
066C 3A92 st -y,R3
066E 2A92 st -y,R2
0670 0E940000 xcall empy32f
0674 FE01 movw R30,R28
0676 0487 std z+12,R16
0678 1587 std z+13,R17
067A 2687 std z+14,R18
067C 3787 std z+15,R19
067E .dbline 61
067E 0A81 ldd R16,y+2
0680 1B81 ldd R17,y+3
0682 9501 movw R18,R10
0684 0E940000 xcall empy16s
0688 9801 movw R18,R16
068A 04E0 ldi R16,4
068C 10E0 ldi R17,0
068E 0E940000 xcall empy16s
0692 1801 movw R2,R16
0694 F101 movw R30,R2
0696 08AC ldd R0,y+56
0698 19AC ldd R1,y+57
069A E00D add R30,R0
069C F11D adc R31,R1
069E 4080 ldd R4,z+0
06A0 5180 ldd R5,z+1
06A2 6280 ldd R6,z+2
06A4 7380 ldd R7,z+3
06A6 7A92 st -y,R7
06A8 6A92 st -y,R6
06AA 5A92 st -y,R5
06AC 4A92 st -y,R4
06AE F101 movw R30,R2
06B0 ; stack offset 4
06B0 0EAC ldd R0,y+62
06B2 1FAC ldd R1,y+63
06B4 E00D add R30,R0
06B6 F11D adc R31,R1
06B8 2080 ldd R2,z+0
06BA 3180 ldd R3,z+1
06BC 4280 ldd R4,z+2
06BE 5380 ldd R5,z+3
06C0 5A92 st -y,R5
06C2 4A92 st -y,R4
06C4 3A92 st -y,R3
06C6 2A92 st -y,R2
06C8 0E940000 xcall add32f
06CC FE01 movw R30,R28
06CE 0483 std z+4,R16
06D0 1583 std z+5,R17
06D2 2683 std z+6,R18
06D4 3783 std z+7,R19
06D6 .dbline 62
06D6 22E0 ldi R18,2
06D8 30E0 ldi R19,0
06DA 0881 ldd R16,y+0
06DC 1981 ldd R17,y+1
06DE 0E940000 xcall div16s
06E2 9A01 movw R18,R20
06E4 2A0D add R18,R10
06E6 3B1D adc R19,R11
06E8 200F add R18,R16
06EA 311F adc R19,R17
06EC 04E0 ldi R16,4
06EE 10E0 ldi R17,0
06F0 0E940000 xcall empy16s
06F4 FE01 movw R30,R28
06F6 2480 ldd R2,z+4
06F8 3580 ldd R3,z+5
06FA 4680 ldd R4,z+6
06FC 5780 ldd R5,z+7
06FE 5A92 st -y,R5
0700 4A92 st -y,R4
0702 3A92 st -y,R3
0704 2A92 st -y,R2
0706 F801 movw R30,R16
0708 EE0D add R30,R14
070A FF1D adc R31,R15
070C 2080 ldd R2,z+0
070E 3180 ldd R3,z+1
0710 4280 ldd R4,z+2
0712 5380 ldd R5,z+3
0714 5A92 st -y,R5
0716 4A92 st -y,R4
0718 3A92 st -y,R3
071A 2A92 st -y,R2
071C F801 movw R30,R16
071E EC0D add R30,R12
0720 FD1D adc R31,R13
0722 2080 ldd R2,z+0
0724 3180 ldd R3,z+1
0726 4280 ldd R4,z+2
0728 5380 ldd R5,z+3
072A 5A92 st -y,R5
072C 4A92 st -y,R4
072E 3A92 st -y,R3
0730 2A92 st -y,R2
0732 0E940000 xcall add32fs
0736 0E940000 xcall empy32f
073A FE01 movw R30,R28
073C 0483 std z+4,R16
073E 1583 std z+5,R17
0740 2683 std z+6,R18
0742 3783 std z+7,R19
0744 .dbline 63
0744 FE01 movw R30,R28
0746 2084 ldd R2,z+8
0748 3184 ldd R3,z+9
074A 4284 ldd R4,z+10
074C 5384 ldd R5,z+11
074E 5A92 st -y,R5
0750 4A92 st -y,R4
0752 3A92 st -y,R3
0754 2A92 st -y,R2
0756 FE01 movw R30,R28
0758 ; stack offset 4
0758 2088 ldd R2,z+16
075A 3188 ldd R3,z+17
075C 4288 ldd R4,z+18
075E 5388 ldd R5,z+19
0760 5A92 st -y,R5
0762 4A92 st -y,R4
0764 3A92 st -y,R3
0766 2A92 st -y,R2
0768 0E940000 xcall sub32f
076C FE01 movw R30,R28
076E 008B std z+16,R16
0770 118B std z+17,R17
0772 228B std z+18,R18
0774 338B std z+19,R19
0776 .dbline 64
0776 FE01 movw R30,R28
0778 2480 ldd R2,z+4
077A 3580 ldd R3,z+5
077C 4680 ldd R4,z+6
077E 5780 ldd R5,z+7
0780 5A92 st -y,R5
0782 4A92 st -y,R4
0784 3A92 st -y,R3
0786 2A92 st -y,R2
0788 FE01 movw R30,R28
078A ; stack offset 4
078A 2484 ldd R2,z+12
078C 3584 ldd R3,z+13
078E 4684 ldd R4,z+14
0790 5784 ldd R5,z+15
0792 5A92 st -y,R5
0794 4A92 st -y,R4
0796 3A92 st -y,R3
0798 2A92 st -y,R2
079A 0E940000 xcall sub32fs
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -