input=[1 1 0 1 0 0 1 0 ]; %input bit
x1=bin2dec(num2str(11)); %converting number to characters
x2=bin2dec(num2str(01));
x3=bin2dec(num2str(00));
x4=bin2dec(num2str(10));
xx=[x1,x2,x3,x4];
This is my code, I don't want to use individual bin2dec conversion. How can I put it in 'for loop'?

 Accepted Answer

Stephen23
Stephen23 on 30 May 2020
Edited: Stephen23 on 30 May 2020
This is MATLAB, you don't need a for loop!
Method one: mtimes:
>> V = [1,1,0,1,0,0,1,0];
>> N = 2;
>> X = pow2(N-1:-1:0)*reshape(V,N,[])
X =
3 1 0 2
Method two: bin2dec:
>> V = [1,1,0,1,0,0,1,0];
>> N = 2;
>> X = bin2dec(reshape(sprintf('%u',V),N,[]).');
X =
3
1
0
2

3 Comments

But can't I put it in for loop to determine individual values. I need to understand properly, since I am a beginner.
"But can't I put it in for loop to determine individual values"
Of course, you can use a loop if you want to. Try it.
Can you please help me with that?

Sign in to comment.

More Answers (0)

Categories

Find more on Convert Image Type in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!