Berdasarkan teknik pengkodean atau pengubahan simbol yang digunakan, metode kompresi dapat dibagi ke dalam tiga kategori, yaitu :
a. Metode simbolwise Menghitung peluang kemunculan dari tiap simbol dalam file input, lalu
mengkodekan satu simbol dalam satu waktu, dimana simbol yang lebih sering muncul diberi kode lebih pendek dibandinglan simbol yang lebih jarang muncul.
Contohnya pada Huffman coding, arithmetic coding.
b. Metode dictionary Menggantikan karakterfragmen dalam file input dengan indeks lokasi dari
karakterfragmen tersebut dalam sebuah kamus dictionary. Contohnya pada algoritma LZW.
c. Metode predictive Menggunakan model finite-context atau finite-state untuk memprediksi
distribusi probabilitas dari simbol-simbol selanjutnya. Contohnya pada algoritma DMC
Sumber : Kompresi Data, 2009. http:id.wikipedia.orgwikiKompresi_data, 15 Nopember 2011, 19.39 WIB.
2.5. Teknik Kompresi Data
Teknik kompresi data dapat digolongkan menjadi dua kelompok utama yaitu : lossy dan lossless. Teknik kompresi secara lossy dimaksudkan dengan
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
teknik kompresi data dengan menghilangkan ketelitian data utama guna mendapatkan data sekecil mungkin kompresi data sebesar mungkin. Teknik
kompresi data secara lossless yaitu teknik kompresi data dengan mengurangkan jumlah data yang terjadi redudansi memiliki symbol yang sama sebelum terjadi
kompresi.
a. Lossy Compression Merupakan teknik kompresi yang menghilangkan beberapa informasi data
yang dianggap tidak penting. Sehingga hasil data yang telah terkompresi tidak sama dengan data yang sebelum dikompresi. Namun data yang telah terkompresi
tersebut sudah cukup untuk digunakan, walaupun datanya telah berubah. Keunggulan dari teknik ini adalah file atau data yang telah terkompresi memiliki
ukuran yang lebih kecil dari ukuran data aslinya. Biasanya teknik kompresi ini banyak diaplikasikan pada data gambar dan data audio.
b. Lossless Compression Merupakan teknik kompresi yang mempertahankan kebutuhan informasi
yang dikandung oleh data, sehingga informasi yang terkandung pada file yang telah terkompresi tetap terjaga meskipun ukurannya telah berubah dari ukuran
data aslinya. Keunggulan dari teknik ini adalah data yang telah terkompresi,
apabila didekompresi kembali akan menghasilkan data yang sama persis dengan data
aslinya. Biasanya teknik kompresi ini banyak diaplikasikan pada data teks.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
Sumber : Kompresi Data, 2009. http:id.wikipedia.orgwikiKompresi_data, 15 Nopember 2011, 19.39 WIB.
2.6. Algorithma Zip
Struktur Zip dapat dilihat pada Gambar 2.6. Setiap file terdiri atas rangkaian dimana header memuat tentang informasi file, kompresi dan enkripsi.
Lalu semua file akan dirangkai dalam sebuah arbitrary dan sebuah informasi mengenai keseluruhan Zip. Pada sebuah informasi, masing-masing memiliki file-
headers , yang menggandung kedua informasi tentang file dan informasi tentang
dimana Zip akan dimulai. Untuk menguraikan kembali data yang sudah dikompresi sebelumnya,
dapat digunakan cara sebagai berikut :
a. Baca bit pertama dari string biner masukan. b. Lakukan traversal pada pohon string mulai dari akar sesuai dengan bit yang
dibaca. Jika bit yang dibaca adalah 0 maka baca anak kiri, tetapi jika bit yang dibaca adalah 1 maka baca anak kanan.
c. Jika anak dari pohon bukan daun simpul tanpa anak maka baca bit berikutnya dari string biner masukan.
d. Hal ini diulang traversal hingga ditemukan daun. e. Pada daun tersebut simbol ditemukan dan proses penguraian kode selesai.
f. Proses penguraian kode ini dilakukan hingga keseluruhan string biner masukan diproses.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
Berikut ini dapat dilihat struktur header file zip
. Gambar 2.1. Struktur Header File Zip.
Setelah mengetahui dan membaca file header, dilakukan proses pencarian dengan mengakses data pada file entry untuk diperiksa apakah mengandung kata
string yang diinputkan. Jika menemukan file yang dicari, tampilkan file tersebut
beserta atribut lainnya.
Sumber : zip, 2010. http:en.wikipedia.orgwikiZip, 25 Oktober 2011 jam 20.07 WIB.
2.7. Algoritma Knuth-Morris-Pratt KMP