Main Content


Convert text representation of base-n integer to double value



D = base2dec(baseStr,n) converts the base-n integer represented by baseStr to the equivalent decimal number and returns it as a double-precision floating-point value.

If baseStr represents an integer greater than or equal to flintmax, then base2dec might not represent it exactly as a floating-point value.


collapse all

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

Input Arguments

collapse all

Text representing base-n numbers, specified as a character array, cell array of character vectors, or string array. baseStr represents base-n digits using numeric characters and, when n is greater than 10, letters. For example, if n is 12, then baseStr represents the numbers 9, 10, and 11 using the characters 9, A, and B, and represents the number 12 as the character sequence 10. Letters can be either uppercase or lowercase.

  • If baseStr is a character array with multiple rows or a cell array of character vectors, then the output is a numeric column vector.

  • If baseStr is a string array, then the output is a numeric array that has the same dimensions.

baseStr cannot represent a negative number.

Base of input representation, specified as an integer between 2 and 36. For example, if n is 8, then baseStr represents base-8 numbers.

Compatibility Considerations

expand all

Behavior changed in R2020b

Introduced before R2006a