convert 16bit char to 4 byte hex values

I have an length X 16 variable of type char. i'd like to convert it to length x 4 nibble hex values
example input: char(3x16)
1000100010001000
0000000000000010
111111111111111111
output wanted 8888
0002
FFFF

Respuestas (1)

c=char(["1000100010001000";
"0000000000000010";
"1111111111111111"])
c = 3×16 char array
'1000100010001000' '0000000000000010' '1111111111111111'
d=dec2hex(bin2dec(c))
d = 3×4 char array
'8888' '0002' 'FFFF'

4 comentarios

Darin Liberda
Darin Liberda el 27 de Jun. de 2023
Very nice and simple! thank you. i have been trying every conversion function in the book and thought it would take a double to work.
Fangjun Jiang
Fangjun Jiang el 27 de Jun. de 2023
I thought there should be a bin2hex() function but didn't find it. Maybe someone else can suggest a direct conversion method?
Fangjun Jiang
Fangjun Jiang el 27 de Jun. de 2023
If your original data is not constrained to be char array, maybe take a look at this document
Nathan Hardenberg
Nathan Hardenberg el 11 de Jul. de 2023
There is a custom bin2hex()-function on File Exchange

Iniciar sesión para comentar.

Categorías

Más información sobre Data Type Conversion en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 27 de Jun. de 2023

Comentada:

el 11 de Jul. de 2023

Community Treasure Hunt

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

Start Hunting!

Translated by