You are on page 1of 10

KODE HAMMING

Duman Care Khrisne, ST. MT.

Kode Hamming
Kunci Kode Hamming adalah penggunaan bit paritas ekstra untuk memungkinkan identifikasi dari satu kesalahan

Aturan Tandai posisi bit semua yang merupakan pangkat dua sebagai bit paritas. (posisi 1, 2, 4, 8, 16, 32, 64, dll) Semua posisi bit lainnya adalah untuk data yang akan dikodekan. (posisi 3, 5, 6, 7, 9, 10, 11, 12, 13, 14, 15, 17, dll) Setiap bit paritas menghitung paritas untuk beberapa bit dalam kata kode. Posisi bit paritas menentukan urutan bit yang bergantian memeriksa dan melompat.
Posisi 1: cek 1 bit, 1 bit lewati, cek 1 bit, 1 bit lewati (1,3,5,7,9,11,13,15,...) Posisi 2: cek 2 bit, melewatkan 2 bit, cek 2 bit, melewatkan 2 bit (2,3,6,7,10,11,14,15,...) Posisi 4: memeriksa 4 bit, 4 bit lewati, periksa 4 bit, 4 bit lewati (4,5,6,7,12,13,14,15,20,21,22,23, ...) Posisi 8: memeriksa 8 bit, lewati 8 bit, periksa 8 bit, lewati 8 bit (8-15,2431,40-47, ...) Posisi 16: periksa 16 bit, melewatkan 16 bit, 16 bit cek, melewatkan 16 bit, (16-31,48-63,80-95, ...) Posisi 32: periksa 32 bit, melewatkan 32 bit, 32 bit cek, melewatkan 32 bit, (32-63,96-127,160-191, ...) dan lain-lain

Set bit paritas menjadi 1 jika jumlah satu adalah ganjil Set bit paritas menjadi 0 jika jumlah satu adalah genap

Contoh
Sebuah Data : 10011010 Buatkan data, dengan menambahkan ruang untuk bit paritas: __1_001_1010

Posisi 1

Posisi 8

Pertanyaan : Kenapa Menggunakan 4 bit Paritas ?

Kalkulasi Setiap Bit Paritas


Posisi 1 akan mengecek cek bit 1,3,5,7,9,11: ?_1_001_1010 Karena jumlah 1 adalah genap maka akan ditambahkan bit 0 0_1_001_1010

Kalkulasi Setiap Bit Paritas


Posisi 2 akan mengecek cek bit 2,3,6,7,10,11 : 0?1_001_1010 Karena jumlah 1 adalah Ganjil maka akan ditambahkan bit 1 011_001_1010

Kalkulasi Setiap Bit Paritas


Posisi 4 akan mengecek cek bit 4,5,6,7,12 : 011?001_1010 Karena jumlah 1 adalah Ganjil maka akan ditambahkan bit 1 0111001_1010

Kalkulasi Setiap Bit Paritas


Posisi 8 akan mengecek cek bit 8,9,10,11,12 : 0111001_1010 Karena jumlah 1 adalah genap maka akan ditambahkan bit 0 011100101010

Cek Error
Posisi Kirim Terima 1 2 3 4 5 6 7 0 1 1 1 0 0 1 0 1 1 1 0 0 1 8 9 0 1 0 1 10 11 0 1 1 1 12 0 0

posisi 1 (genap) : 3,5,7,9,11 (posisi 1 tidak dihitung) posisi 2 (ganjil) : 3,6,7,10,11 (posisi 2 tidak dihitung) posisi 4 (ganjil): 5,6,7,12 (posisi 4 tidak dihitung) posisi 8 (genap): 9,10,11,12 (posisi 8 tidak dihitung)

Latihan
010101100011 111110001100 000010001010

You might also like