fft变换过程
function y=myfft(xr,n)
p=0:n-1 ; % 开始倒位序
nu=log2(n);
p1=p;
b=zeros(1,n);
for t=1:nu;
p2=floor(p1/2);
b=b*2+(p1-2*p2); p1=p2;
end;
yr(p+1)=xr(b+1);
xr=yr; % 倒位序结束
t=0:n/2-1; %计算因子 w 开始 (只计算
for v=0:n/2-1;
w=exp(-2*i*pi*t/n);
end; %计算因子w 结束
for m=1:nu; % 计算x(k)开始
h=2^(m-1);
k=1;
while(k<n+1)
for t=1:h;
y=bitshift(k-1,nu-m,nu)+1; %求w 的幂次数
xch(k)=xr(k)+w(y)*xr(k+h);
k=k+1;
end;
for t=1:h;
y=bitshift(k-1-h,nu-m,nu)+1; %求w 的幂次数
xch(k)=xr(k-h)-xr(k)*w(y);
k=k+1;
end;
end;
xr=xch;
end; % 计算x(k)结束
y=xr %输出变换后的结果