Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- str = char((rand(1, 100)>0.5) + '0'); % test data
- data = uint8(bin2dec(reshape(str(1:end-mod(end,8)), [], 8)));
- len = 60;
- string = [];
- for i = 1:len
- string = [string sprintf('%d', randi([0 1]))];
- end
- % error
- % bin2dec(string);
- % roll your own...
- value = 0;
- for i = length(string):-1:1
- value = value + str2num(string(i))*2^(length(string)-i);
- end
- N=100;
- strbin = char(randi(2,1,N)+'0'-1);
- pows2 = 2.^(N-1:-1:0);
- value=pows2*(strbin-'0')';
- Nmax = 1e8; % already 700MB for pows2, watch out!
- pows2 = 2.^(Nmax-1:-1:0);
- value = pows2(Nmax-N+1:end)*(strbin-'0')';
- N=3000;
- strbin = char(randi(2,1,N)+'0'-1);
- binvals=strbin-'0';
- val=0;
- twopow=vpi(1);
- for ii=1:N
- val=val+twopow*binvals(N-ii+1);
- twopow=twopow*2;
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement