Convert text representation of base-
integer to double value
baseStr represents an integer greater than or equal to
base2dec might not represent it
exactly as a floating-point value.
Convert a character vector that represents a base-12 value to a decimal number.
baseStr = '1B'; D = base2dec(baseStr,12)
D = 23
Create a string array that represents multiple octal, or base-8, values.
baseStr = ["1777" "172" "16"]
baseStr = 1x3 string "1777" "172" "16"
Convert the octal values and return a numeric array.
D = base2dec(baseStr,8)
D = 1×3 1023 122 14
baseStr— Text representing base-
Text representing base-
n numbers, specified
as a character array, cell array of character vectors, or string array.
baseStr represents base-
digits using numeric characters and, when
greater than 10, letters. For example, if
baseStr represents the numbers 9, 10, and 11 using the
represents the number 12 as the character sequence
10. Letters can be
either uppercase or lowercase.
baseStr is a character array with multiple rows or a cell
array of character vectors, then the output is a numeric column vector.
baseStr is a string array, then the output is a numeric
array that has the same dimensions.
baseStr cannot represent a negative number.
n— Base of input representation
Base of input representation, specified as an integer between 2 and 36. For example,
n is 8, then
baseStr represents base-8
Behavior changed in R2020b
base2dec function issues a warning when input values are greater than or equal to
flintmax. In previous releases,
base2dec did not issue this warning.
base2dec now issues a warning because inputs representing
integers greater than or equal to
flintmax might not be represented
exactly as double-precision floating-point values.
To convert values greater than
flintmax exactly, consider one of
In place of scalar text inputs, use hexadecimal or binary literals representing the same values. When you write a value as a literal, MATLAB® stores it as an integer that represents the value exactly. For more information, see Hexadecimal and Binary Values.
To convert hexadecimal inputs greater than
can use the
sscanf function with the
%lx operator. When you use
converted values are integers that have the
uint64 data type.
These integers have enough storage to represent values greater than