Main Content

hex2dec

将十六进制整数的文本表示转换为双精度值

说明

示例

D = hex2dec(hexStr) 将由 hexStr 表示的十六进制整数转换为等效的十进制数,并将其以双精度浮点值形式返回。

如果 hexStr 表示大于或等于 flintmax 的整数,则 hex2dec 可能不会将其精确表示为浮点值。

示例

全部折叠

将表示十六进制值的字符向量转换为十进制数。

hexStr = '3FF';
D = hex2dec(hexStr)
D = 1023

从 R2019b 开始,您可以直接以十六进制格式写入值,而无需使用 hex2dec。使用 0x 前缀,不要使用引号。MATLAB® 将该值存储为整数,而不是文本。

D = 0x3FF
D = uint16
    1023

创建一个表示多个十六进制值的字符串数组。

hexStr = ["3FF" "7A" "E"]
hexStr = 1x3 string
    "3FF"    "7A"    "E"

转换十六进制值并返回数值数组。

D = hex2dec(hexStr)
D = 1×3

        1023         122          14

从 R2019b 开始,建议您使用十六进制字面值创建数值数组,而不是使用 hex2dec 转换文本。

D = [0x3FF 0x7A 0xE]
D = 1x3 uint16 row vector

   1023    122     14

输入参数

全部折叠

表示十六进制数的文本,指定为字符数组、字符向量元胞数组或字符串数组。hexStr 使用字符 0-9 以及 A-Fa-f 表示十六进制数字。

  • 如果 hexStr 是包含多行的字符数组或字符向量元胞数组,则输出为数值列向量。

  • 如果 hexStr 是字符串数组,则输出为具有相同维度的数值数组。

从 R2020a 开始,hexStr 可以是包含十六进制字面值使用的相同前缀(0x0X)和后缀的文本。例如,对 hex2dec 的以下调用都会返回数字 255

hex2dec('FF')
hex2dec('0xFF')
hex2dec('0xFFs32')

此外,在 R2020a 中,hexStr 还可以通过使用指定有符号整数类型的后缀来表示负数的 2 的补码。例如,hex2dec('0xFFs8') 返回 -1,因为 s8 后缀指定 8 位有符号整数类型。在以前的版本中,hexStr 无法表示负数。

扩展功能

版本历史记录

在 R2006a 之前推出

全部展开