www.pudn.com > jaguar2s.zip > bitrev.m
function y = bitrev(x);
% do a radix-2 bit reversal
for i=0:255
itmp=i;
k=128;
for j=8:-1:1
if (itmp >= k)
bitv(9-j) = 1;
itmp=itmp-k;
else
bitv(9-j) = 0;
end;
k=k/2;
end;
newbitv(1) = bitv(8);
newbitv(2) = bitv(7);
newbitv(3) = bitv(6);
newbitv(4) = bitv(5);
newbitv(5) = bitv(4);
newbitv(6) = bitv(3);
newbitv(7) = bitv(2);
newbitv(8) = bitv(1);
k=128;
newval=0;
for j=1:8
if (newbitv(j) == 1)
newval = newval + k;
end;
k=k/2;
end;
index(i+1) = newval+1;
end;
for i=1:256
y(index(i)) = x(i);
end;