making blocks using for loop

2 Ansichten (letzte 30 Tage)
Raza
Raza am 17 Feb. 2014
Kommentiert: Raza am 19 Feb. 2014
hi, i have number of bits (1 ans 0) and i want to have these bits in a block of 10 bits. let for example s=101010001110100101010010010001010 i want to put first 10 bits in b1 next ten bits in b2, next ten bits in b3 and the remaining bit in b4 with padding bits(to complete 10 bits in b4)

Akzeptierte Antwort

Mischa Kim
Mischa Kim am 17 Feb. 2014
Bearbeitet: Mischa Kim am 17 Feb. 2014
Raza, this should do the trick:
s = '101010001110100101010010010001010'
s0 = '000000000';
b = {};
for ii = 1:floor(length(s)/10)
ind = 10*(ii-1) + 1;
b{ii} = s(ind:ind + 9);
end
b{ii+1} = strcat(s(10*ii + 1:end),s0(1:10*(ii+1) - length(s)));
disp(b)
  2 Kommentare
Raza
Raza am 17 Feb. 2014
thanks man, got the idea
Raza
Raza am 19 Feb. 2014
i got a problem that when i save these values in b1, b2 , b3 and so on. and retrieve it gives value instead of binary digits, so to solve i used bitget command but it only support 52 digits, while my requirement is 128

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by