# hex2num

Convert IEEE hexadecimal format to double-precision number

## Syntax

``X = hex2num(hexStr)``

## Description

example

````X = hex2num(hexStr)` converts `hexStr` to the double-precision floating-point number that it represents. The input argument `hexStr` has up to 16 characters representing a number in its IEEE® format using hexadecimal digits. If `hexStr` has fewer than 16 digits, then `hex2num` pads `hexStr` with zeros to the right. Unlike the `hex2dec` function, `hex2num` can convert inputs that represent floating-point values with fractional parts. Also, `hex2num` handles `NaN` and `Inf` value and denormal numbers correctly.If `hexStr` represents multiple numbers, then `hex2dec` returns the numbers as a column vector of double-precision numbers.```

## Examples

collapse all

Create a character vector that represents a double-precision number in its IEEE® format, using hexadecimal digits.

`hexStr = '400921fb54442d18';`

To convert it to the number that it represents, use the `hex2num` function. If `hexStr` represents a number with a fractional part, then `hex2num` converts it correctly.

`X = hex2num(hexStr)`
```X = 3.1416 ```

You can convert `X` back to its hexadecimal representation using the `num2hex` function.

`num2hex(X)`
```ans = '400921fb54442d18' ```

Create a character vector that represents a negative number. Then convert it.

```hexStr = 'BFF'; X = hex2num(hexStr)```
```X = -1 ```

Convert a representation of `NaN`.

`hex2num('FFF8')`
```ans = NaN ```

Convert a representation of `Inf`.

`hex2num('7FF')`
```ans = Inf ```

Create a string array that represents multiple numbers in their IEEE® format, using hexadecimal digits.

`hexStr = ["4005bf0b0d7a3c06" "3fc189374bc6a7f0" "402c"]`
```hexStr = 1x3 string "4005bf0b0d7a3c06" "3fc189374bc6a7f0" "402c" ```

Convert `hexStr` and return it as an array of double-precision numbers.

`X = hex2num(hexStr)`
```X = 1×3 2.7183 0.1370 14.0000 ```

## Input Arguments

collapse all

Text representing hexadecimal numbers, specified as a character array, cell array of character vectors, or string array.

• If `hexStr` is a cell array of character vectors or a string array, then `hex2num` converts each element to a number.

• If `hexStr` is a character array, then `hex2num` converts each row to a number.