hexadecimal value with zeros but without spaces.

7 次查看(过去 30 天)
Hi,
I have an algorithm which is generating outputs in hexadeciaml formats. Its a loop with with different hexadecimal values after every iteration. My ultimate purpose is to ocnvert these hexa deciamal values into binaries and combine all those values as one binary string. Now the problem is that I get "ee 06 da 7b " hexa decimal values like this, and in order to its conversionin binary I have to remove these spaces in between but, as I try to remove the spaces, leading zeros are also removed. That part which is performing these conversions and some output is also added as an image. I will be greatful if you can help, as i ahve already tried so many methods available on internet.
% to get hexa decimal value and save it to variable str
str = sprintf(' %2x', w(i, :));
% to remove spaces in between
str= str(~isspace(str))
%hex to binary conversion
str=reshape(str,[],2);
str(all(str == ' ', 2), :) = [];
str=hex2dec(str);
disp(str);
% str = strrep(str, ' ', '')
disp(class(str));
% str = strtrim( str);
% disp(str);
str=dec2bin(str,4);

采纳的回答

Walter Roberson
Walter Roberson 2020-12-8
w = [0x97 0x06 0x0a 0x04]
w = 1×4
151 6 10 4
i = 1;
reshape(dec2bin(w(i,:), 8).', [], 1).'
ans = '10010111000001100000101000000100'
  4 个评论
Maria Imdad
Maria Imdad 2020-12-8
after all these conversions i am getting my data like this as a cell
'00' '00' '00' '00' '00' '00' '00' '00' '00' '00' '00' '00' '00' '00'
now I have to convert this data into vector. i am getting these two errors now.
  1. 'Key has to be a vector (not a cell array) with 16 elements.'
  2. Elements of key vector have to be bytes (0 <= key(i) <= 255).
can you help me convert my data into vector . I have already tried cell2mat

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Variables 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by