hexadecimal value with zeros but without spaces.
6 次查看(过去 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);
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/454093/image.png)
0 个评论
采纳的回答
Walter Roberson
2020-12-8
w = [0x97 0x06 0x0a 0x04]
i = 1;
reshape(dec2bin(w(i,:), 8).', [], 1).'
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!