Я пытаюсь использовать MATLAB для симуляции механизма кодирования и декодирования связи. Следовательно, все данные будут 0 или 1.
Изначально я создал вектор определенной длины и заполнил 0 и 1, используя
source_data = rand(1,8192)<.7;
Для кодирования мне нужно многократно выполнять операции XOR, что я мог сделать без каких-либо проблем.
Для операции декодирования мне нужно реализовать метод исключения Гаусса для решения системы уравнений, где я понял, что это векторное представление не очень полезно. Я попытался использовать strcat
для добавления нескольких 0 и 1 к переменной a с помощью цикла for:
for i=1:8192
if(mod(i,2)==0)
a = strcat(a,'0');
else
a = strcat(a,'1');
end
i = i+1;
disp(i);
end
когда я попытался length(a)
после этого, я обнаружил, что длина была 16384, что в два раза больше 8192. Я не уверен, где я иду не так или как лучше всего это решить.