⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ff.lst

📁 在ICCAVR 环境实现的fft,
💻 LST
📖 第 1 页 / 共 5 页
字号:
    057E 90E9      LD	R14,Y+
    057F 90D9      LD	R13,Y+
    0580 9508      RET
stk2arg1:
    0581 842A      LDD	R2,Y+10
    0582 843B      LDD	R3,Y+11
    0583 844C      LDD	R4,Y+12
    0584 859D      LDD	R25,Y+13
    0585 9508      RET
stk2arg0:
    0586 850E      LDD	R16,Y+14
    0587 851F      LDD	R17,Y+15
    0588 8928      LDD	R18,Y+16
    0589 8939      LDD	R19,Y+17
    058A 9508      RET
float_epilog:
    058B DFEA      RCALL	restore_floatregs
    058C 920F      PUSH	R0
    058D B60F      IN	R0,0x3F
    058E 9628      ADIW	R28,0x8
    058F BE0F      OUT	0x3F,R0
    0590 900F      POP	R0
    0591 9508      RET
float_prolog:
    0592 DFD8      RCALL	save_floatregs
    0593 DFF2      RCALL	stk2arg0
    0594 CFEC      RJMP	stk2arg1
add32fs:
    0595 D002      RCALL	add32f
    0596 940C043B  JMP	push_arg4
add32f:
    0598 940E0592  CALL	float_prolog
    059A D012      RCALL	FADD
    059B 940C058B  JMP	float_epilog
sub32fs:
    059D D002      RCALL	sub32f
    059E 940C043B  JMP	push_arg4
sub32f:
    05A0 940E0592  CALL	float_prolog
    05A2 D009      RCALL	FSUB
    05A3 940C058B  JMP	float_epilog
fret2:
    05A5 2F8A      MOV	R24,R26
    05A6 2F39      MOV	R19,R25
    05A7 2D24      MOV	R18,R4
    05A8 2D13      MOV	R17,R3
    05A9 2D02      MOV	R16,R2
    05AA 940C0763  JMP	repack
FSUB:
    05AC 5890      SUBI	R25,0x80
FADD:
    05AD 940E0751  CALL	unpack
    05AF 3890      CPI	R25,0x80
    05B0 F3C9      BEQ	0x05AA
    05B1 3830      CPI	R19,0x80
    05B2 F391      BEQ	0x05A5
    05B3 2FB3      MOV	R27,R19
    05B4 1BB9      SUB	R27,R25
    05B5 F3A3      BVS	0x05AA
    05B6 F02A      BMI	0x05BC
    05B7 F439      BNE	0x05BF
    05B8 1502      CP	R16,R2
    05B9 0513      CPC	R17,R3
    05BA 0524      CPC	R18,R4
    05BB F418      BCC	0x05BF
    05BC 940E0745  CALL	swapacc
    05BE CFF4      RJMP	0x05B3
    05BF 31B8      CPI	R27,0x18
    05C0 F018      BCS	0x05C4
    05C1 2422      CLR	R2
    05C2 2433      CLR	R3
    05C3 2444      CLR	R4
    05C4 30B8      CPI	R27,0x8
    05C5 F028      BCS	0x05CB
    05C6 2C23      MOV	R2,R3
    05C7 2C34      MOV	R3,R4
    05C8 2444      CLR	R4
    05C9 50B8      SUBI	R27,0x8
    05CA CFF9      RJMP	0x05C4
    05CB 23BB      TST	R27
    05CC F029      BEQ	0x05D2
    05CD 9446      LSR	R4
    05CE 9437      ROR	R3
    05CF 9427      ROR	R2
    05D0 95BA      DEC	R27
    05D1 F7D9      BNE	0x05CD
    05D2 2FB8      MOV	R27,R24
    05D3 27BA      EOR	R27,R26
    05D4 F04A      BMI	0x05DE
    05D5 D018      RCALL	0x05EE
    05D6 F698      BCC	0x05AA
    05D7 9527      ROR	R18
    05D8 9517      ROR	R17
    05D9 9507      ROR	R16
    05DA 5F3F      SUBI	R19,0xFF
    05DB F673      BVC	0x05AA
    05DC 940C0732  JMP	maxres
    05DE D013      RCALL	usub24
    05DF F411      BNE	0x05E2
    05E0 940C0739  JMP	minres
    05E2 F410      BCC	0x05E5
    05E3 940E072C  CALL	negmant
    05E5 2322      TST	R18
    05E6 F21A      BMI	0x05AA
    05E7 0F00      LSL	R16
    05E8 1F11      ROL	R17
    05E9 1F22      ROL	R18
    05EA 5031      SUBI	R19,1
    05EB F7CB      BVC	0x05E5
    05EC 940C0732  JMP	maxres
    05EE 0D02      ADD	R16,R2
    05EF 1D13      ADC	R17,R3
    05F0 1D24      ADC	R18,R4
    05F1 9508      RET
usub24:
    05F2 1902      SUB	R16,R2
    05F3 0913      SBC	R17,R3
    05F4 0924      SBC	R18,R4
    05F5 9508      RET
div32fs:
    05F6 D002      RCALL	div32f
    05F7 940C043B  JMP	push_arg4
div32f:
    05F9 940E0592  CALL	float_prolog
    05FB D023      RCALL	FDIV
    05FC 940C058B  JMP	float_epilog
    05FE 93BA      ST	R27,-Y
    05FF 24DD      CLR	R13
    0600 24EE      CLR	R14
    0601 24FF      CLR	R15
    0602 E1B8      LDI	R27,0x18
    0603 1502      CP	R16,R2
    0604 0513      CPC	R17,R3
    0605 0524      CPC	R18,R4
    0606 F028      BCS	0x060C
    0607 1902      SUB	R16,R2
    0608 0913      SBC	R17,R3
    0609 0924      SBC	R18,R4
    060A 9408      BSET	0
    060B C001      RJMP	0x060D
    060C 9488      BCLR	0
    060D 1CDD      ROL	R13
    060E 1CEE      ROL	R14
    060F 1CFF      ROL	R15
    0610 0F00      LSL	R16
    0611 1F11      ROL	R17
    0612 1F22      ROL	R18
    0613 95BA      DEC	R27
    0614 F771      BNE	0x0603
    0615 2D0D      MOV	R16,R13
    0616 2D1E      MOV	R17,R14
    0617 2D2F      MOV	R18,R15
    0618 91B9      LD	R27,Y+
    0619 9508      RET
fdiv10:
    061A 2422      CLR	R2
    061B 2433      CLR	R3
    061C E2B0      LDI	R27,0x20
    061D 2E4B      MOV	R4,R27
    061E E491      LDI	R25,0x41
FDIV:
    061F 2399      TST	R25
    0620 F129      BEQ	0x0646
    0621 2333      TST	R19
    0622 F151      BEQ	0x064D
    0623 940E0751  CALL	unpack
    0625 F139      BEQ	0x064D
    0626 278A      EOR	R24,R26
    0627 9408      BSET	0
    0628 0B39      SBC	R19,R25
    0629 F0EB      BVS	0x0647
    062A 9446      LSR	R4
    062B 9437      ROR	R3
    062C 9427      ROR	R2
    062D 9526      LSR	R18
    062E 9517      ROR	R17
    062F 9507      ROR	R16
    0630 DFCD      RCALL	0x05FE
    0631 2322      TST	R18
    0632 F02A      BMI	0x0638
    0633 0F00      LSL	R16
    0634 1F11      ROL	R17
    0635 1F22      ROL	R18
    0636 5031      SUBI	R19,1
    0637 F07B      BVS	0x0647
    0638 2FB0      MOV	R27,R16
    0639 95B6      LSR	R27
    063A F048      BCS	0x0644
    063B 2300      TST	R16
    063C F43A      BPL	0x0644
    063D 2311      TST	R17
    063E F42A      BPL	0x0644
    063F E0B1      LDI	R27,1
    0640 0F0B      ADD	R16,R27
    0641 27BB      CLR	R27
    0642 1F1B      ADC	R17,R27
    0643 1F2B      ADC	R18,R27
    0644 940C0763  JMP	repack
    0646 C006      RJMP	0x064D
    0647 E7BF      LDI	R27,0x7F
    0648 2F3B      MOV	R19,R27
    0649 2B2B      OR	R18,R27
    064A EF0F      LDI	R16,0xFF
    064B EF1F      LDI	R17,0xFF
    064C 9508      RET
    064D 2700      CLR	R16
    064E 2711      CLR	R17
    064F 2722      CLR	R18
    0650 2733      CLR	R19
    0651 2788      CLR	R24
    0652 9508      RET
cmp32f:
    0653 940E0592  CALL	float_prolog
    0655 D002      RCALL	FLTCP
    0656 940C058B  JMP	float_epilog
FLTCP:
    0658 D002      RCALL	0x065B
    0659 23BB      TST	R27
    065A 9508      RET
    065B 2333      TST	R19
    065C F082      BMI	0x066D
    065D 2399      TST	R25
    065E F042      BMI	0x0667
    065F 1739      CP	R19,R25
    0660 F040      BCS	0x0669
    0661 F429      BNE	0x0667
    0662 1502      CP	R16,R2
    0663 0513      CPC	R17,R3
    0664 0524      CPC	R18,R4
    0665 F018      BCS	0x0669
    0666 F021      BEQ	0x066B
    0667 E0B1      LDI	R27,1
    0668 9508      RET
    0669 EFBF      LDI	R27,0xFF
    066A 9508      RET
    066B 27BB      CLR	R27
    066C 9508      RET
    066D 2399      TST	R25
    066E F7D2      BPL	0x0669
    066F 1739      CP	R19,R25
    0670 F3B0      BCS	0x0667
    0671 F7B9      BNE	0x0669
    0672 1502      CP	R16,R2
    0673 0513      CPC	R17,R3
    0674 0524      CPC	R18,R4
    0675 F388      BCS	0x0667
    0676 F3A1      BEQ	0x066B
    0677 CFF1      RJMP	0x0669
    0678 E7BF      LDI	R27,0x7F
    0679 2F3B      MOV	R19,R27
    067A 2B2B      OR	R18,R27
    067B EF0F      LDI	R16,0xFF
    067C EF1F      LDI	R17,0xFF
    067D 9508      RET
    067E 2700      CLR	R16
    067F 2711      CLR	R17
    0680 2722      CLR	R18
    0681 2733      CLR	R19
    0682 2788      CLR	R24
    0683 9508      RET
mpy32fs:
    0684 D002      RCALL	mpy32f
    0685 940C043B  JMP	push_arg4
mpy32f:
    0687 940E0592  CALL	float_prolog
    0689 D002      RCALL	FMUL
    068A 940C058B  JMP	float_epilog
FMUL:
    068C 940E0751  CALL	unpack
    068E F379      BEQ	0x067E
    068F 3890      CPI	R25,0x80
    0690 F369      BEQ	0x067E
    0691 278A      EOR	R24,R26
    0692 9408      BSET	0
    0693 1F39      ADC	R19,R25
    0694 F31B      BVS	0x0678
    0695 D00B      RCALL	umul24
    0696 2322      TST	R18
    0697 F02A      BMI	0x069D
    0698 953A      DEC	R19
    0699 0CFF      LSL	R15
    069A 1F00      ROL	R16
    069B 1F11      ROL	R17
    069C 1F22      ROL	R18
    069D 5F3F      SUBI	R19,0xFF
    069E F2CB      BVS	0x0678
    069F 940C0763  JMP	repack
umul24:
    06A1 939A      ST	R25,-Y
    06A2 24DD      CLR	R13
    06A3 24EE      CLR	R14
    06A4 24FF      CLR	R15
    06A5 27BB      CLR	R27
    06A6 E198      LDI	R25,0x18
    06A7 0CDD      LSL	R13
    06A8 1CEE      ROL	R14
    06A9 1CFF      ROL	R15
    06AA 1F00      ROL	R16
    06AB 1F11      ROL	R17
    06AC 1F22      ROL	R18
    06AD F430      BCC	0x06B4
    06AE 0CD2      ADD	R13,R2
    06AF 1CE3      ADC	R14,R3
    06B0 1CF4      ADC	R15,R4
    06B1 1F0B      ADC	R16,R27
    06B2 1F1B      ADC	R17,R27
    06B3 1F2B      ADC	R18,R27
    06B4 959A      DEC	R25
    06B5 F789      BNE	0x06A7
    06B6 9199      LD	R25,Y+
    06B7 9508      RET
    06B8 E7BF      LDI	R27,0x7F
    06B9 2F3B      MOV	R19,R27
    06BA 2B2B      OR	R18,R27
    06BB EF0F      LDI	R16,0xFF
    06BC EF1F      LDI	R17,0xFF
    06BD 9508      RET
    06BE 2700      CLR	R16
    06BF 2711      CLR	R17
    06C0 2722      CLR	R18
    06C1 2733      CLR	R19
    06C2 2788      CLR	R24
    06C3 9508      RET
empy32fs:
    06C4 D002      RCALL	empy32f
    06C5 940C043B  JMP	push_arg4
empy32f:
    06C7 940E0592  CALL	float_prolog
    06C9 920F      PUSH	R0
    06CA 92CF      PUSH	R12
    06CB D004      RCALL	eFMUL
    06CC 90CF      POP	R12
    06CD 900F      POP	R0
    06CE 940C058B  JMP	float_epilog
eFMUL:
    06D0 940E0751  CALL	unpack
    06D2 F359      BEQ	0x06BE
    06D3 3890      CPI	R25,0x80
    06D4 F349      BEQ	0x06BE
    06D5 278A      EOR	R24,R26
    06D6 9408      BSET	0
    06D7 1F39      ADC	R19,R25
    06D8 F2FB      BVS	0x06B8
    06D9 D00E      RCALL	eumul24
    06DA 2D2F      MOV	R18,R15
    06DB 2D1E      MOV	R17,R14
    06DC 2D0D      MOV	R16,R13
    06DD 2322      TST	R18
    06DE F02A      BMI	0x06E4
    06DF 953A      DEC	R19
    06E0 0CCC      LSL	R12
    06E1 1F00      ROL	R16
    06E2 1F11      ROL	R17
    06E3 1F22      ROL	R18
    06E4 5F3F      SUBI	R19,0xFF
    06E5 F293      BVS	0x06B8
    06E6 940C0763  JMP	repack
eumul24:
    06E8 9D22      MUL	R18,R2
    06E9 2CC0      MOV	R12,R0
    06EA 2CD1      MOV	R13,R1
    06EB 9D24      MUL	R18,R4
    06EC 2CE0      MOV	R14,R0
    06ED 2CF1      MOV	R15,R1
    06EE 9D12      MUL	R17,R2
    06EF 0CC1      ADD	R12,R1
    06F0 1EDB      ADC	R13,R27
    06F1 1EEB      ADC	R14,R27
    06F2 1EFB      ADC	R15,R27
    06F3 9D03      MUL	R16,R3
    06F4 0CC1      ADD	R12,R1
    06F5 1EDB      ADC	R13,R27
    06F6 1EEB      ADC	R14,R27
    06F7 1EFB      ADC	R15,R27
    06F8 9D13      MUL	R17,R3
    06F9 0CC0      ADD	R12,R0
    06FA 1CD1      ADC	R13,R1
    06FB 1EEB      ADC	R14,R27
    06FC 1EFB      ADC	R15,R27
    06FD 9D04      MUL	R16,R4
    06FE 0CC0      ADD	R12,R0
    06FF 1CD1      ADC	R13,R1
    0700 1EEB      ADC	R14,R27
    0701 1EFB      ADC	R15,R27
    0702 9D23      MUL	R18,R3
    0703 0CD0      ADD	R13,R0
    0704 1CE1      ADC	R14,R1
    0705 1EFB      ADC	R15,R27
    0706 9D14      MUL	R17,R4
    0707 0CD0      ADD	R13,R0
    0708 1CE1      ADC	R14,R1
    0709 1EFB      ADC	R15,R27
    070A 20CC      TST	R12
    070B F422      BPL	0x0710
    070C 9488      BCLR	0
    070D 1EDB      ADC	R13,R27
    070E 1EEB      ADC	R14,R27
    070F 1EFB      ADC	R15,R27
    0710 9508      RET
neg32fs:
    0711 D002      RCALL	neg32f
    0712 940C043B  JMP	push_arg4
neg32f:
    0714 93BF      PUSH	R27
    0715 9109      LD	R16,Y+
    0716 9119      LD	R17,Y+
    0717 9129      LD	R18,Y+
    0718 9139      LD	R19,Y+
    0719 E8B0      LDI	R27,0x80
    071A 273B      EOR	R19,R27
    071B 91BF      POP	R27
    071C 9508      RET
savfacc1:
    071D 938A      ST	R24,-Y
    071E 93BA      ST	R27,-Y
    071F 9508      RET
restorefacc1:
    0720 91B9      LD	R27,Y+
    0721 9189      LD	R24,Y+
    0722 9508      RET
unpackfacc1:
    0723 2F83      MOV	R24,R19
    0724 7880      ANDI	R24,0x80
    0725 0F22      LSL	R18
    0726 1F33      ROL	R19
    0727 5830      SUBI	R19,0x80
    0728 9408      BSET	0
    0729 9527      ROR	R18
    072A 3830      CPI	R19,0x80
    072B 9508      RET
negmant:
    072C 9510      COM	R17
    072D 9520      COM	R18
    072E 9501      NEG	R16
    072F 4F1F      SBCI	R17,0xFF

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -