Filter löschen
Filter löschen

How to convert the digits of a number in a higher number base to an array

2 Ansichten (letzte 30 Tage)
Ernest Adamtey
Ernest Adamtey am 2 Aug. 2021
Bearbeitet: dpb am 2 Aug. 2021
I converted 32 to base 18 using the code
A=dec2base(32,18)
and the output was
'1B'
I want to convert the digits of 1B to an array [1 B]. so i used the code
num2str(A)-'0'
Which gave me an output
ans =
1 21
Instead of ans= 1 B. Please help.
  8 Kommentare
dpb
dpb am 2 Aug. 2021
Bearbeitet: dpb am 2 Aug. 2021
Newer releases of Matlab do support hexadecimal notation, but otherwise, only base 10 numbers are allowed outside of text datatypes." @Rik
While not really pertinent to the discussion, Forth has the system constant BASE that lets one define the base dynamically...
BINARY
...everything here in base 2
DECIMAL
...now we're back in base 10
that is extremely handy and that I miss.
: DECIMAL 10 BASE ! ;
: HEX 16 BASE ! ;
: OCTAL 8 BASE ! ;
: BINARY 2 BASE ! ;
are the common defining words. Of course, one needs be certain DECIMAL is in effect when defining the above!!! :)
Just a sidebar into days of yore..."we now return you to your regular programming".

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu Characters and Strings finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by