MATLAB 帮助中心
将 IEEE 十六进制格式转换为双精度数
X = hex2num(hexStr)
X = hex2num(hexStr) 将 hexStr 转换为它所表示的双精度浮点数。输入参量 hexStr 最多有 16 个字符,表示 IEEE® 格式的十六进制数。如果 hexStr 少于 16 位,则 hex2num 在 hexStr 的右端填零。
X
hexStr
hex2num
与 hex2dec 函数不同,hex2num 可以转换表示带小数部分的浮点值的输入。此外,hex2num 能正确处理 NaN 和 Inf 值以及非正规数。
hex2dec
NaN
Inf
如果 hexStr 表示多个数,则 hex2dec 以双精度数的列向量形式返回这些数字。
示例
全部折叠
使用十六进制数字创建一个字符向量,它表示一个 IEEE® 格式双精度数。
hexStr = '400921fb54442d18';
要将其转换为它所表示的数,请使用 hex2num 函数。如果 hexStr 表示具有小数部分的数,则 hex2num 会正确转换该数字。
X = 3.1416
您可以使用 num2hex 函数将 X 转换回其十六进制表示。
num2hex
num2hex(X)
ans = '400921fb54442d18'
创建一个表示负数的字符向量。然后转换它。
hexStr = 'BFF'; X = hex2num(hexStr)
X = -1
转换 NaN 的表示。
hex2num('FFF8')
ans = NaN
转换 Inf 的表示。
hex2num('7FF')
ans = Inf
使用十六进制数字创建一个字符串数组,它表示多个 IEEE® 格式的数。
hexStr = ["4005bf0b0d7a3c06" "3fc189374bc6a7f0" "402c"]
hexStr = 1×3 string "4005bf0b0d7a3c06" "3fc189374bc6a7f0" "402c"
转换 hexStr,并将其以双精度数的数组形式返回。
X = 1×3 2.7183 0.1370 14.0000
表示十六进制数的文本,指定为字符数组、字符向量元胞数组或字符串数组。
如果 hexStr 是字符向量元胞数组或字符串数组,则 hex2num 会将每个元素转换为一个数字。
如果 hexStr 是字符数组,则 hex2num 将每行转换为一个数字。
全部展开
用法说明和限制:
如果 hex2num 的输出为空,则生成的代码返回 0×1 数组,而不是 0×0 数组。
0
1
backgroundPool
ThreadPool
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
在 R2006a 之前推出
num2hex | hex2dec | sprintf | format
sprintf
format
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处