定型
转换数据类型而不更改底层数据
描述
例子
将整数转换为相同存储大小的无符号整数
将整数转换为具有相同存储大小的无符号整数。
X = int16(-1)
X =int16-1
Y = typecast(X,“uint16”)
Y =uint1665535
显示十六进制表示的位模式。转换数据类型定型
不会更改基础数据。
格式十六进制X
X =int16飞行符
Y = typecast(X,“uint16”)
Y =uint16飞行符
将8位整数转换为单精度
创建一个由8位整数组成的1 × 4向量。
X = int8([77 60 43 26])
X =1x4成行向量77 60 43 26
将使用4字节(32位)存储的4个8位整数转换为同样使用4字节存储的单精度数字。
Y = typecast(X,“单一”)
Y =单3.5411 e-23
显示十六进制表示的位模式。在十六进制表示法中,一个字节(8位)由两位数字表示。的定型
函数在不修改数据的情况下重新排列位模式。
格式十六进制X
X =1x4成行向量4d 3c 2b 1a
Y = typecast(X,“单一”)
Y =单1 a2b3c4d
将32位整数转换为8位整数
创建一个32位无符号整数的1 × 3向量。
X = uint32([1 255 256])
X =1x3 uint32行向量1 255 256
投X
转换成8位无符号整数,使用定型
。每个32位值被分成4个8位段。在小端系统上运行此代码会产生以下结果。
Y = typecast(X,“uint8”)
Y =1x12 uint8行向量1 0 0 255 0 0 0 0 0 0 0
的第三个要素X
256,超过了8位所能容纳的最大值。因此,Y(9)中的转换值溢出到Y(10)。
Y (9:12)
ans =1x4 uint8行向量0 1 0 0
你可以转换Y
返回到32位无符号整数,而不更改底层数据。
X2 = typecast(Y,“uint32”)
X2 =1x3 uint32行向量1 255 256
的输出比较定型
的输出投
来看看这两个函数的区别。
Z = cast(X,“uint8”)
Z =1x3 uint8行向量1 255 255
X2 = cast(Z,“uint32”)
X2 =1x3 uint32行向量1 255 255
将8位整数转换为16位整数
从较小的数据类型(uint8
)变成更大的(uint16
).使用十六进制表示来显示位模式的重新排列。的定型
函数以小端风格返回输出,将输入数据的四个8位段组合为两个16位段。
格式十六进制X = uint8([44 55 66 77])
X =1x4 uint8行向量2c 37 42 4d
Y = typecast(X,“uint16”)
Y =1x2 uint16行向量372 c 4 d42
可以将小端输出转换为大端输出(反之亦然)swapbytes
函数。
Y = swapbytes(typecast(X,“uint16”))
Y =1x2 uint16行向量424 c37 d
输入参数
X
- - - - - -输入数组
标量|向量
输入数组,指定为标量或矢量。
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
类型
- - - - - -新的数据类型
“单一”
|“双”
|“int8”
|“int16”
|“int32”
|“int64”
|“uint8”
|“uint16”
|“uint32”
|“uint64”
新的数据类型,指定为“单一”
,“双”
,“int8”
,“int16”
,“int32”
,“int64”
,“uint8”
,“uint16”
,“uint32”
,或“uint64”
。
如果位大小为类型
是n
的每个元素的位大小的倍X
,然后X
必须包含的倍数n
要转换的元素X
到数据类型类型
。否则,MATLAB®抛出错误。
提示
扩展功能
C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。
使用注意事项和限制:
数据类型参数的值必须是小写的。
当你使用
定型
中继承的输入端口数据类型MATLAB函数块,软件可以抛出一个大小错误。要避免此错误,请显式指定块输入端口数据类型。整数输入或结果类必须直接映射到目标硬件上的C类型。
输入必须是一个变长向量或固定大小的向量。看到工具箱函数代码生成的可变大小限制(MATLAB编码器)。
输出向量总是和输入向量有相同的方向。
GPU代码生成
使用GPU Coder™为NVIDIA®GPU生成CUDA®代码。
使用注意事项和限制:
数据类型参数的值必须是小写的。
当你使用
定型
中继承的输入端口数据类型MATLAB函数块,软件可以抛出一个大小错误。要避免此错误,请显式指定块输入端口数据类型。整数输入或结果类必须直接映射到目标硬件上的C类型。
输入必须是一个变长向量或固定大小的向量。
输出向量总是和输入向量有相同的方向。
线程环境
使用MATLAB®在后台运行代码backgroundPool
或加速代码与并行计算工具箱™ThreadPool
。
这个函数完全支持基于线程的环境。金宝app有关更多信息,请参见在线程环境下运行MATLAB函数。
GPU数组
通过使用并行计算工具箱™在图形处理单元(GPU)上运行来加速代码。
该功能完全支持GPU阵列。金宝app有关更多信息,请参见在GPU上运行MATLAB函数(并行计算工具箱)。
分布式阵列
使用Parallel Computing Toolbox™在集群的组合内存中对大型数组进行分区。
该功能完全支持分布式阵列。金宝app有关更多信息,请参见用分布式数组运行MATLAB函数(并行计算工具箱)。
版本历史
R2006a之前引入
对MATLAB
您的avez cliquques sur unlien quques对应的命令MATLAB:
在MATLAB中,你可以使用MATLAB的命令。Les navigateurs web ne支金宝app持通过Les命令MATLAB。
你亦可选择下列网址:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家网站没有针对您所在位置的访问进行优化。