decimal to binary and grouping into another matrix
    2 views (last 30 days)
  
       Show older comments
    
i have to convert a decimal value to binary and group every two digits to
form a new one dimensional matrix whose size is 1,4*rows*cols
 i tried this its not working ie
secret = [22 33
         22 44]
[rows,cols]=size(secret);
for i= 1 : rows
    for j= 1: cols
        binarysecret{i,j}=dec2bin(secret(i,j),8);
    end
end cc=1;
[r,c]=size(binarysecret)
for q = 1 : r
    for q1 = 1 : c
         while(x<8)
               y=x+1;
            secretDNA{cc} =  binarysecret{q,q1}(x:y)  
         x=x+2;
        cc=cc+1;
       end
    end
end
Thanks in advance
0 Comments
Accepted Answer
  Andrei Bobrov
      
      
 on 30 Oct 2012
        
      Edited: Andrei Bobrov
      
      
 on 30 Oct 2012
  
      bi = dec2bin(secret,8) - '0';
out = reshape(mat2cell(bi,ones(size(bi,1),1),2*ones(size(bi,2)/2,1))',1,[]);
or
n = 8;
s = size(secret);
bi = rem(floor(reshape(secret',[],1)*pow2(1-n:0)),2);
out = reshape(mat2cell(bi,ones(prod(s),1),2*ones(n/2,1))',1,[]);
2 Comments
More Answers (0)
See Also
Categories
				Find more on Interpolation in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
