Separate the digits in a hex number

5 visualizzazioni (ultimi 30 giorni)
I want to use the digits from hex numbers as indices to a lookup table. Eg: if the number is A9, A corresponds to the row of the lookup table and 9 corresponds to the column, so that I can pick up the value of the cell at the intersection of this row and column.
How can I separate 'A' and '9' in hex?

Risposta accettata

Walter Roberson
Walter Roberson il 18 Feb 2017
>> sscanf('A9', '%1x')
ans =
10
9
  3 Commenti
Walter Roberson
Walter Roberson il 19 Feb 2017
rc = sscanf('A9', '%1x');
r = rc(1);
c = rc(2);
fiona rozario
fiona rozario il 19 Feb 2017
Thank you, so much!

Accedi per commentare.

Più risposte (1)

John D'Errico
John D'Errico il 18 Feb 2017
Modificato: John D'Errico il 18 Feb 2017
If you want the digits as an index into a table, then since indexing is 1-based in MATLAB, you want 'A' to map to 11, '9' maps to 10, '0' to 1, etc.
This will do:
H = 'F5A9';
[~,ind] = ismember(H,'0123456789ABCDEF')
ind =
16 6 11 10

Categorie

Scopri di più su Tables in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by