Matlab中hex2num函数使用

目录

一.语法

二.说明

示例

将十六进制格式转换为带小数部分的数

转换负数、NaN和Inf的十六进制表示

返回双精度数组


        hex2num函数将IEEE 十六进制格式转换为双精度数。

一.语法

X = hex2num(hexStr)

hexStr表示十六进制数的文本,它可以指定位字符数组、字符向量元胞数组或字符串数组。

·         如果hexStr是字符向量元胞数组或字符串数组,则hex2num会将每个元素转换为一个数字。

·         如果hexStr是字符数组,则hex2num将每行转换为一个数字。

二.说明

        X = hex2num(hexStr) 将 hexStr 转换为它所表示的双精度浮点数。输入参数hexStr最多有 16 个字符,表示 IEEE® 格式的十六进制数。如果hexStr少于16位,则hex2num在hexStr的右端填零。与hex2dec函数不同,hex2num可以转换表示带小数部分的浮点值的输入。此外,hex2num能正确处理NaN和Inf值以及非规范数。

        如果hexStr表示多个数,则hex2dec以双精度数的列向量形式返回这些数字。

示例

将十六进制格式转换为带小数部分的数

        使用十六进制数字创建一个字符向量,它表示一个 IEEE® 格式双精度数。例如数据:

hexStr = '400921fb54442d18';

        要将其转换为它所表示的数,使用 hex2num 函数。如果 hexStr 表示具有小数部分的数,则 hex2num 会正确转换该数字。

X = hex2num(hexStr)
X = 3.1416

        也可以使用 num2hex 函数将 X 转换回其十六进制表示。

num2hex(X)
ans = 
'400921fb54442d18'

转换负数、NaN和Inf的十六进制表示

        创建一个表示负数的字符向量。然后进行转换。例如:

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

        转换NaN的表示:

hex2num('FFF8')
ans = NaN

        转换Inf的表示:

hex2num('7FF')
ans = Inf

返回双精度数组

        使用十六进制数字创建一个字符串数组,它表示多个 IEEE® 格式的数。如下所示:

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

        转换 hexStr,并将其以双精度数的数组形式返回,如:

X = hex2num(hexStr)
X = 1×3

    2.7183    0.1370   14.0000

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值