资源简介
自己写的基4FFT,主要是了解fft编程思想,实验结果正确。在此基础可以扩展到64,256点等的基4FFT。
代码片段和文件信息
//2011-11-04
//general
//points 16 radix4 dit-fft
#include
using namespace std;
int main()
{
float dataR[16]dataI[16];
int x0x1x2x3;
int Ljkbpi;
float TRTITBRTBIT2BRT2BIT3BRT3BI;
float COS[10]SIN[10];
int xx;
cout<<“16 points fft “< int a[16];
for(i=0;i<16;i++)
{
a[i]=0;
}
for(i=0;i<16;i++)
{
a[i]=i;
cout<<“a[“<}
/////////////////////////////
cout<<“\n“<<“invert sequence: “<
///////////////////////////
for(i=0;i<16;i++)
{
dataR[i]=a[i];
}
////////////////////////////////////////////wnp table
{
COS[0]=1;SIN[0]=0;
COS[1]=0.92388f;SIN[1]=-0.382683f;
COS[2]=0.707107f;SIN[2]=-0.707107f;
COS[3]=0.382683f;SIN[3]=-0.92388f;
COS[4]=0;SIN[4]=-1;
COS[5]=-0.382683f;SIN[5]=-0.92388f;
COS[6]=-0.707107f;SIN[6]=-0.707107f;
COS[7]=-0.92388f;SIN[7]=-0.382683f;
COS[8]=-1;SIN[8]=0;
COS[9]=-0.923879f;SIN[9]=0.382684f;
}
/********** following code invert sequence ************/
for(i=0;i<16;i++)
{ x0=x1=x2=x3=0;
x0=i&0x01; x1=(i/2)&0x01; x2=(i/4)&0x01; x3=(i/8)&0x01;
xx=x1*8+x0*4+x3*2+x2;
dataI[xx]=dataR[i];
}
for(i=0;i<16;i++)
{ dataR[i]=dataI[i]; dataI[i]=0;
}
for(i=0;i<16;i++)
{
cout<<“iv[“<}
cout< /************** following code FFT *******************/
for(L=1;L<=2;L++)
{ /* for(1) */
b=1; i=L-1;
cout<<“\n“<<“L=“< w
相关资源
- 排队论C++语言仿真实现
- c++面向对象程序设计 谭浩强第二版习
- 异步网络通信 用C++
- WAV文件的读写接口类,依赖标准C++库
- C++五子棋程序实验报告
- C++ 先进先出算法FIFO
- 画图程序最新版 MFC/VC/VC++ 很多功能哦
- 华中科技大学C++实验
- C++课设MFC实现人员信息管理系统
- 模拟船只航迹发生的VC++程序,是航船
- C++程序员简历模板
- 大一C语言基础学习练习例题大部分考
- 快递物理系统管理c++课设
- 图书管理系统大作业C++代码
- MT4接口API,VC++调用范例MT4 API
- 双语版c++程序设计课后题
- C++中国象棋编码
- 图书管理系统MYSQL加c++
- C++期末的复习资料,很好用
- c++贪吃蛇小游戏
- C++实现的学生学籍信息管理系统
- MFC人事管理系统工程文件
- VS2015与MySql的连接C++
- C++API中文帮助文档
- c++课程设计日期格式处理
- C++ Primer Plus第6版 源代码+练习答案
- Arduino小车的程序c++/c可以实现红外对
- C++数据结构与算法源代码第四版清华
- C++简单局域网聊天工具
- 课程设计 c++学生教师管理系统
评论
共有 条评论