我想使用 Matlab 将 uint_32 数字的每个字节保存到 1x4 矩阵的元素中
a = zeros(1,4,'uint8');
val = uint32(2^32-1);
如何按字节拆分 val 并将每个元素插入数组中?
您可以使用该typecast
函数在不更改基础数据的情况下在数据类型之间进行转换:
a = typecast(uint32(2^32-1), 'uint8')
% produces the array [255 255 255 255]
据我所知,我认为您正在寻找这样的东西,其中最低有效字节作为输出向量中最右边的元素 -
bits = reshape(bitget(num,32:-1:1),8,[]); %// num is the input number
weights2 = 2.^([7:-1:0]);
out = weights2*bits