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

답변 (1개)

Fangjun Jiang
Fangjun Jiang 2023년 6월 27일
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

Darin Liberda
Darin Liberda 2023년 6월 27일
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 2023년 6월 27일
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 2023년 6월 27일
If your original data is not constrained to be char array, maybe take a look at this document
There is a custom bin2hex()-function on File Exchange

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Data Type Conversion에 대해 자세히 알아보기

태그

질문:

2023년 6월 27일

댓글:

2023년 7월 11일

Community Treasure Hunt

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

Start Hunting!

Translated by