# num2hex


将单精度数和双精度数转换为 IEEE 十六进制格式

函数库: TyBase

# 语法

hex = num2hex(X)

# 说明

hex = num2hex(X) 使用十六进制数字返回 X 的 IEEE® 格式表示形式。示例

  • 如果 X 是双精度数,则 hex 为 UInt64;

  • 如果 X 是单精度数,则 hex 为 UInt32。

与 dec2hex 函数不同,num2hex 可以转换具有小数部分的浮点值。此外,num2hex 能够正确处理 NaN 和 Inf 值以及非规范数。

# 示例

转换具有小数部分的双精度数

创建一个数,并用十六进制数字将其表示为 IEEE® 格式。X 是双精度数,并且有小数部分。

using TyBase
X = 3.1416;
hex = num2hex(X)
0x400921ff2e48e8a7
转换单精度数

创建一个单精度数。

using TyBase
X = Float32(2.7182818)
2.7182817f0

转换 X。num2hex 函数仅使用八个十六进制数字表示单精度数。

hex = num2hex(X)
0x402df854
表示负数、NaN 和 Inf

转换一个负数并用 IEEE® 格式表示它。

using TyBase
num2hex(-1.0)
0xbff0000000000000

转换 NaN。

num2hex(NaN)
0x7ff8000000000000

转换 Inf。

num2hex(Inf)
0x7ff0000000000000
表示浮点数数组

创建一个数值数组。

using TyBase
X = [3.1416 1.37e-5 1023.92];

转换 X 的元素。num2hex 函数返回表示这些值的十六进制数字数组。

hex = num2hex(X)
1×3 Matrix{UInt64}:
 0x400921ff2e48e8a7  0x3eecbb21a99df39b  0x408fff5c28f5c28f

# 输入参数

X - 输入数组
数值数组

输入数组,指定为数值数组。

数据类型: Float32 | Float64

# 另请参阅

dec2hex