swapbytes
交换字节顺序
说明
示例
交换 1×4 向量的每个元素的字节顺序。
format short
X = uint16([0 1 128 65535])
X = 1×4 uint16 row vector
0 1 128 65535
Y = swapbytes(X)
Y = 1×4 uint16 row vector
0 256 32768 65535
检查采用十六进制记数法的输出是否显示了 endian 转换。
format hex
X
X = 1×4 uint16 row vector
0000 0001 0080 ffff
Y
Y = 1×4 uint16 row vector
0000 0100 8000 ffff
创建包含 16 位整数的三维数组 A
。交换每个元素的字节顺序。使用十六进制表示来显示 endian 转换。
format hex
X = uint16(magic(3)*150);
X(:,:,2) = X*40;
X
X = 3×3×2 uint16 array
X(:,:,1) =
04b0 0096 0384
01c2 02ee 041a
0258 0546 012c
X(:,:,2) =
bb80 1770 8ca0
4650 7530 a410
5dc0 d2f0 2ee0
Y = swapbytes(X)
Y = 3×3×2 uint16 array
Y(:,:,1) =
b004 9600 8403
c201 ee02 1a04
5802 4605 2c01
Y(:,:,2) =
80bb 7017 a08c
5046 3075 10a4
c05d f0d2 e02e
输入参数
数值,指定为标量、向量、矩阵或多维数组。如果 X
为非标量,则按元素执行 swapbytes
运算。
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
详细信息
计算机系统以字节为单位存储数据。在计算机内存中存储数值有两种方法:little endian 和 big endian。在 little-endian 样式中,字节的有效位从左到右递增。在 big-endian 样式中,字节的有效位从左到右递减。swapbytes
函数交换内存中的字节顺序,将 little endian 转换为 big endian(或相反)。
下图说明了 32 位(4 字节)十六进制数 4D3C2B1A 的转换。在十六进制记数法中,一个字节用两个位表示。Little-endian 图中的每个框显示一个字节的数据(4D、3C、2B 和 1A)。swapbytes
函数交换这些框或字节的顺序。
扩展功能
swapbytes
函数完全支持 tall 数组。有关详细信息,请参阅 tall 数组。
用法说明和限制:
仅当输入的类为 double
时,才支持继承 MATLAB Function 模块中的 swapbytes
的输入的类。对于非双精度输入,输入端口数据类型必须指定,而不能继承。
用法说明和限制:
仅当输入的类为 double
时,才支持继承 MATLAB Function 模块中的 swapbytes
的输入的类。对于非双精度输入,输入端口数据类型必须指定,而不能继承。
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
swapbytes
函数完全支持 GPU 数组。要在 GPU 上运行该函数,请将输入数据指定为 gpuArray
(Parallel Computing Toolbox)。有关详细信息,请参阅在 GPU 上运行 MATLAB 函数 (Parallel Computing Toolbox)。
此函数完全支持分布式数组。有关详细信息,请参阅使用分布式数组运行 MATLAB 函数 (Parallel Computing Toolbox)。
版本历史记录
在 R2006a 之前推出
另请参阅
MATLAB Command
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 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)