Mã hóa kênh truyền
266
1 0 0 1 0 1 1
0 1 0 1 1 1 0
0 0 1 0 1 1 1
genmat =
1 1 0 1 0 0 0
0 1 1 0 1 0 0
1 1 1 0 0 1 0
1 0 1 0 0 0 1
>> genpoly = cyclpoly(7,3);
>> [parmat,genmat] = cyclgen(7,genpoly)
parmat =
1 0 0 0 1 1 0
0 1 0 0 0 1 1
0 0 1 0 1 1 1
0 0 0 1 1 0 1
genmat =
1 0 1 1 1 0 0
1 1 1 0 0 1 0
0 1 1 1 0 0 1
Ta cũng có thể chuyển đổi giữa ma trận sinh và ma trận kiểm tra bằng cách dùng hàm
gen2par
:
>> H = gen2par(G)
Ví dụ:
>> genmat = [1 0 0 1 0; 0 1 0 1 1; 0 0 1 0 1];
>> parmat = gen2par(genmat)
parmat =
1 1 0 1 0
0 1 1 0 1
>> genmat1=gen2par(parmat)
genmat1 =
1 0 0 1 0
0 1 0 1 1
0 0 1 0 1
o Bảng mã sửa sai (syndrome): bảng mã sửa sai được bộ giải mã dùng để sửa các lỗi có thể
gặp phải trong quá trình truyền. Mỗi bảng mã là một ma trận n cột và
k
n
−
2
hàng, mỗi hàng là
một vector sai ứng với một từ mã nhận được. Với mã Hamming, số hàng của bảng mã là n +
1, cho phép sửa tất cả các lỗi đơn trong mọi từ mã.
Với một ma trận kiểm tra cho trước, có thể tạo ra bảng mã sửa sai tương ứng bằng cách dùng
hàm syndtable.
>> t = syndtable(h)