Kod Dan Kod Semakan Pariti
-
Upload
nhafizah-ahmad-hashim -
Category
Documents
-
view
310 -
download
0
description
Transcript of Kod Dan Kod Semakan Pariti
Kod Ulangan
Satu cara yang mudah untuk memperkenalkan lebihan adalah untuk mengulang semua. Jadi, jika ada mesej, ia boleh dikodkan dengan mengulang setiap digit n kali.
Jika n = 5, panjang kod ulangan ialah5.
Contoh :
S100111111100000000001111111111
U101011111100000111110000011111
S100111111100000000001111111111
I010010000011111000000000011111
E001010000000000111110000011111
Jika dikirim S = 10011 as 11111 00000 00000 11111 11111, ia akan diterima sebagai urutan ) dan 1 yang panjangnya 25.
Kita perlu peraturan (algoritma) untuk mengdekod mesej yang diterima.
Dengan bantuan komputer mengdekod mesej, tekaan mengikut konteks tidak dilakukan tetapi peraturan yang tepat perlu digunakan.
Misalnya, apabila mesej berikut di terima:
11011 00110 11000 10000 10111 bagaimanakah ianya didekod ?\
Algoritma Dekod bagi Kod Ulangan Panjang 5
1. Bilang digit 1.
2. Jika bilangan digit 1 3 , tulis 11111.
3. Jika bilangan digit 1 2 , tulis 00000.
Perhatikan bahawa kod ini boleh membetulkan 2 ralat tetapi ia mempunyai kad maklumat yang sangat rendah 15 .
Jika n = 4 (setiap digit diulang 4 kali),apakah yang berlaku jika terima 0011 ?
35 36
Saluran Simetri Binari
Kebarangkalian menerima simbol yang silap adalah serupa sama ada simbol 0 atau simbol 1 dikirim.
Kebarangkalian menerima simbol yang silap = p
Misalnya, jika p =1, jadi kebarangkalian satu digit tunggal diterima secara silap
100
ialah1= 0.01, jadi kebarangkalian satu digit tunggal diterima secara betul ialah
10099 = 0.99.100
Dianggap semual ralat berlaku secara rawak iaitu secara tidak bersandar satu sama lain.
Untuk memudahkan pengiraan, kod ulangan panjang 3 digunakan.
Bolehkahkebarangkalian99= 0.99diperbaiki jika satu katakod satu digit
100
diterima?
MesejMesejMesej mungkinMesej
dikirimdikodkanditerimadidekod
00000000010
010100
1 1111010111
110111
36
37
Jika 000 dikirim,
Pengiraan kebarangkalian mesej yang mungkin diterima:
Pr (000)=99x99x99=0.970299
100100100
Pr (001)=99x99x1= 0.009801
100100100
Pr (010)=99x1x99=0.009801
100100100
Pr (100)=1x99x99=0.009801
100100100
Jadi kebarangkalian mengdekod mesej sebagai 0:
Pr (0) = Pr (000) + Pr (001) + Pr (010) + Pr (100)
0.970299 + 3 x 0.009801
0.999702 .
Jadi, secara purata, kesilapan mengdekod mesej yang dikirim 0 sebagai 1 berlaku hanya sekali setiap 100 kali, kita akan dapat ralat kurang daripada 3 setiap 10 000 (atau 1/3000) ! Ini merupak kemajuan yang hebat.
Bagi kod ulangan panjang n,
n digit
}
}}
1 digitn 1 digit
Mesejsemakan
Kadar maklumat, R = 1n . Ini sangat kecil!
Kod ulangan dapat membetulkan ralat tetapi kadar maklumatnya sangat rendah!
37
38
Latihan
1. Anda telah menerima mesej berikut yang ditulis dengan kod ulangan panjang 5.
0000010010110111100001111
1111001010010000101100001
0011110000011001110000000
0100011111001111011111101
0111100010010001011110000
a) Tukar mesej ini kepada kod 5 digit binari.
b) Tukarkan kepada abjad biasa.
2. Anda telah menerima mesej berikut yang ditulis dengan kod ulangan panjang 5.
0000011011011110010011111
0100011111001000000111101
1110100100000001111001111
1111110000010000000000100
1011100010100000011101100
0110010001010100001111001
0101010111011111111100000
1111100010110110100000000
a) Tukar mesej ini kepada kod 5 digit binari.
b) Tukarkan kepada abjad biasa.
c) Apakah mesej yang sebenar?
3. Kod ulangan panjang 3 digunakan untuk transmisi mesej. Jika kebarangkalian membuat kesilapan dalam satu digit ialah 0.01 dan kita anggap kesilapan berlaku secara tak bersandar satu sama lain, kirakan kebarangkalian mesej 000 yang dikirim diterima sebagai 111.
38
Kod Semakan Pariti
Kod semakan pariti tunggal merupakan ekstrem daripada kod ulangan. Berbanding dengan kod ulangan, kod semakan pariti tunggal hanya ada satu digit semakan.
Digit semakan ini diperolehi daripada jumlah digit maklumat (mod 2).
Sebagai contoh, lihat bagaimana digit semakan dikira
A0000011
}
5 digit1 digit
maklumatsemakan
B0000101
C0000110
D0001001
Secara am katakod ditulis sebagai c1 c2 c3 c4 c5 c6 di mana
c6 = c1 + c2 + c3 + c4 + c5 (mod 2).
Bagi kod semakan pariti tunggal,
n digit
}
-- --
}
k = n 1 1 digit semakan digit mesej
Kadar maklumatk=n 1, amat tinggi!
nn
Akan tetapi, kod semakan pariti tunggal hanya boleh mengesan bilangan ralat yang ganjil tetapi tidak dapat membetulkannya.
39
Latihan
1. Cari katakod yang mewakili huruf berikut dalam kod semakan
pariti tunggal di atas : J , L , Q , S , G , X.
2. Tulis mesej NO ERRORS dengan kod semakan pariti tunggal.
3. Mesej berikut telah diterima dalam kod semakan pariti tunggal:
000011000000001111011110010110001001
000000100100001010100111101001011000 101000
a) Kesan di mana ralat telah berlaku.
b) Dekod semua huruf yang lain.
c) Cuba teka mesej yang dikirim.