%(6,3) linear block code :
G=input('Enter Generator matrix : ');
[k n] = size(G);
for i=1:2^k
for j=1:k
D(i,j) = bitget(i-1,4-j);
end
end
C = encode(D,n,k,'linear/fmt',G)
wt=gfweight(G)
p=gen2par(G)
t=syndtable(p)
r=input('Received code : ');
for i=1:2^k
for j=1:2^k
if r==xor(C(j,:),t(i,:));
cc=C(j,:);
e_bit=t(i,:);
break;
end
end
end
newr=xor(r,e_bit)
output:
Enter Generator matrix : [ 1 1 0 1 0 0;1 0 1 0 1 0;0 1 1 0 0 1]
C=
0
0
1
1
1
1
0
0
0
1
0
1
1
0
1
0
0
1
1
0
0
1
1
0
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
0
1
1
1
0
1
0
1
0
1
1
wt =
3
p=
1
0
0
Single-error patterns loaded in decoding table. 1 rows remaining.
2-error patterns loaded. 0 rows remaining.
t=
0
0
0
0
1
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
Received code : [0 1 1 0 1 1]
newr =
0