How do I convert a hexadecimal input from the user into binary form?

this is the piece of code I am having trouble with:
h = input('Enter a hexadecimal string: ');
d = hex2dec(h);
b = dec2bin(d);
but this code doesn't produce the exact binary representation of the input for large hexadecimal strings. is there a way of converting hex to binary directly? also I'm using the Matlab R2010a student version, so please give me solutions compatible with this version only. Thank you

回答(1 个)

Example
h='555F'
d = hex2dec(h)
b = dec2bin(d)
Now, what do you mean: I have trouble with this

2 个评论

for example,for large hexadecimal strings like the one below h = 'ABD7C41890EB527F648CA03DB51C793F' the conversion from hex2dec and then from dec2bin is being either rounded or truncated and therefore I'm unable to get a complete representation of the input hex string in binary. In the above example, there are 32 hex digits, but the resulting binary number converts only till the first half of the hex string, the later half of the string is simply displayed as zeros. I require selected 8-hex digits for further processing in my code. If the later part is displayed as only zeros, then my code will run erroneously.
Did you find any solution for this problem?

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Data Type Conversion 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by