kode hamming

10
KODE HAMMING Duman Care Khrisne, ST. MT.

Upload: jean-scenny

Post on 06-Aug-2015

119 views

Category:

Documents


11 download

DESCRIPTION

STIMIK STIKOM INDONESIA, DENPASAR-BALIRepost presentasi Komunikasi Data

TRANSCRIPT

Page 1: Kode Hamming

KODE HAMMING

Duman Care Khrisne, ST. MT.

Page 2: Kode Hamming

Kode Hamming

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

Page 3: Kode Hamming

• 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,24-

31,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

Aturan

Page 4: Kode Hamming

Contoh

• Sebuah Data : 10011010

• Buatkan data, dengan menambahkan ruang untuk bit paritas:

_ _ 1 _ 0 0 1 _ 1 0 1 0

Posisi 1 Posisi 8

Pertanyaan : Kenapa Menggunakan 4 bit Paritas ?

Page 5: Kode Hamming

Kalkulasi Setiap Bit Paritas

• Posisi 1 akan mengecek cek bit 1,3,5,7,9,11: 

? _ 1 _ 0 0 1 _ 1 0 1 0

Karena jumlah 1 adalah genap maka

akan ditambahkan bit 0

0 _ 1 _ 0 0 1 _ 1 0 1 0

Page 6: Kode Hamming

Kalkulasi Setiap Bit Paritas

• Posisi 2 akan mengecek cek bit 2,3,6,7,10,11 : 

0 ? 1 _ 0 0 1 _ 1 0 1 0

Karena jumlah 1 adalah Ganjil maka

akan ditambahkan bit 1

0 1 1 _ 0 0 1 _ 1 0 1 0

Page 7: Kode Hamming

Kalkulasi Setiap Bit Paritas

• Posisi 4 akan mengecek cek bit 4,5,6,7,12 : 

0 1 1 ? 0 0 1 _ 1 0 1 0

Karena jumlah 1 adalah Ganjil maka

akan ditambahkan bit 1

0 1 1 1 0 0 1 _ 1 0 1 0

Page 8: Kode Hamming

Kalkulasi Setiap Bit Paritas

• Posisi 8 akan mengecek cek bit 8,9,10,11,12 : 

0 1 1 1 0 0 1 _ 1 0 1 0

Karena jumlah 1 adalah genap maka

akan ditambahkan bit 0

0 1 1 1 0 0 1 0 1 0 1 0

Page 9: Kode Hamming

Cek Error

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)

Posisi 1 2 3 4 5 6 7 8 9 10 11 12

Kirim 0 1 1 1 0 0 1 0 1 0 1 0

Terima 0 1 1 1 0 0 1 0 1 1 1 0

Page 10: Kode Hamming

Latihan

• 010101100011• 111110001100• 000010001010