我有一个需要你帮助的问题。我有点流
S=[1 0 0 1 1 0 1 1 1 1 1 0] %it is a vector
现在我想将3位S分组到一个数据包中。所以我的数据包就是那个
packet 1: 100
packet 2: 110
packet 3: 111
packet 4: 110
如何通过matlab代码实现它 这是我的代码。但它确实可以作为我的计划
packetsize=3;
k=12 %number of bit stream
%S = rand(1,12)<0.5 % create random message vector
S=[1 0 0 1 1 0 1 1 1 1 1 0] %it is a vector
for i=1:k
packet=s(packetsize*(i-1)+1:(i*packetsize))
end
答案 0 :(得分:5)
听起来你只想要reshape(S,[],3)
?
答案 1 :(得分:3)
怎么样:
>> S = [1 0 0 1 1 0 1 1 1 1 1 0];
>> packets = reshape(S, 3, []).' * [100;10;1]
packets =
100
110
111
110
现在您可以访问第i个“数据包”:packets(i,:)