Minggu, 25 Oktober 2020

KOMPRESI TEKS DENGAN METODE HUFFMAN DAN SHANNON-FANO ABACCDA

 A. METODE KOMPRESI HUFFMAN ABACCDA

    Dalam kode ASCII string 7 huruf “ABACCDA” membutuhkan representasi 7 X 8 bit = 56 bit (7 byte), dengan rincian sebagai berikut :

  • A = 01000001

  • B = 01000010

  • A = 01000001

  • C = 01000011

  • C = 01000011

  • D = 01000111

  • A = 01000001


            PEMECAHAN MASALAH

String : ABACCDA


SIMBOL

FREKUENSI

A

3

B

1

C

2

D

1

 

 Diurutkan dari frekuensi yang terkecil

B. 1/7              D. 1/7              

C. 2/7              A. 3/7

            Gabungkan frekuensi terkecil


BD. 2/7            C. 2/7              A. 3/7


A.3/7               BD.2/7             c.2/7


Berdasarkan tabel maka dapat disusun model pohon Huffman nya :

Berdasarkan pohob Huffman yang ditunjukan pada hasil di atas maka dapat ditentukan kode Huffman untuk masing-masing setiap simbol yang dalam string " ABACCDA "

 

SIMBOL

KODE HUFFMAN

A

0

B

110

C

10

D

111

 Berdasarkan tabel Huffman maka rangkaian bit dari string ABACCDA adalah :

 0 110 0 10 10 111 0

Jadi jumlah bit yang digunakan hanya 13 bit, lebih hemat dari jumlah bit sebelumnya, yaitu 56 bit.


DEKOMPRESI

Saat membaca kode bit pertama dalam rangkaian bit: 0 110 0 10 10 111 0 yaitu bit 0, dapat langsung disimpulkan bahwa kode bit “0” merupakan pemetaan dari simbol “A”. Kemudian baca kode bit selanjutnya, yaitu bit “1”, tidak ada kode Huffman “1”, lalu baca kode Huffman selanjutnya yaitu “1”, tidak ada kode Huffman “1” , lalu baca kode Huffman selanjutnya yaitu “0”sehingga menjadi “110” yaitu karakter “B”. Dan begitu seterusnya.


B. METODE KOMPRESI SHANNON-FANO

  ABACCDA

    Model pohon Shannon-Fano :

KARAKTER

A

B

C

D

Shannon-Fano Code ( bit )

00

10

01

11


Dengan perhitungan jumlah kapastias memori yang sama seperti di atas, maka didapat untk total memori yaitu :

  • A = 3

  • B = 1

  • C = 2

  • D = 1

Ø  Maka :

3x2bit + 1x2bit  + 2x2bit + 1x3bit = 14 bit