• Tidak ada hasil yang ditemukan

BAB 3 METODOLOGI PENELITIAN. kepustakaan dan studi laboratorium, di mana penulis mempelajari teori-teori teknik

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 3 METODOLOGI PENELITIAN. kepustakaan dan studi laboratorium, di mana penulis mempelajari teori-teori teknik"

Copied!
20
0
0

Teks penuh

(1)

3.1 Metode Penelitian

Dalam penulisan ini metode penelitian yang digunakan adalah metode studi kepustakaan dan studi laboratorium, di mana penulis mempelajari teori-teori teknik kompresi dari buku dan website, lalu kemudian merancang apilikasi pendukung untuk

membandingkan teknik kompresi data antara algoritma run length, huffman, dan half byte dalam hal ukuran hasil kompresi, waktu kompresi dan waktu dekompresi, di mana

dalam penelitian ini menggunakan 50 data berupa teks (.doc) yang dimampatkan dengan

masing-masing algoritma. Penelitian dilakukan dengan menggunakan langkah-langkah sebagai berikut :

● Perancangan aplikasi pendukung.

Dalam menguji hipotesis dibutuhkan data-data, oleh karena itu perlu dirancang sebuah aplikasi kompresi data antara algoritma run length, huffman dan half byte

dengan menggunakan bahasa pemrograman borland delphi 6. aplikasi ini memerlukan input berupa data yang berisi dari lokasi (path) dari data-data yang akan

dikompresi, kemudian melakukan proses kompresi pada data yang telah diinput dan

terakhir menghasilkan output berupa hasil kompresi, waktu kompresi, dan waktu

dekompresi.

● Melakukan uji coba aplikasi untuk mendapatkan data.

Pengujian aplikasi ini menggunakan 50 data teks (.doc). Dari pengujian ini akan

diukur hasil kompresi, waktu kompresi, dan waktu dekompresi. Waktu yang dibutuhkan untuk melakukan proses kompresi didapatkan dari komponen timer yang

(2)

ada pada borland delphi. Hasil kompresi berupa ukuran file data setelah proses

kompresi dilakukan dan persentase rasio, waktu kompresi serta waktu dekompresi. ● Menganalisis data yang telah didapatkan.

Hasil pengukuran yang telah didapatkan dari pengujian aplikasi akan diolah dengan menggunakan uji z jika distribusi data normal dan uji wilcoxon jika distribusi data

tidak normal untuk menguji perbedaan rata-rata hasil kompresi, waktu pemampatan, dan waktu dekompresi serta statistik deskriptif untuk memberikan deskripsi mengenai hasil kompresi, waktu kompresi, dan waktu dekompresi dari masing-masing algoritma. Uji z digunakan karena jumlah sampel yang digunakan cukup besar, yaitu : 50 buah. Uji z dapat dilakukan pada data yang memiliki sebaran normal, sedangkan untuk data yang tidak memilki sebaran normal, maka akan dilakukan uji nonparametrik, yaitu : uji wilcoxon. Untuk mengetahui normalitas

sebaran data, maka dilakukan uji kenormalan dengan menggunakan software SPSS,

sehingga dari hasil output software SPSS dapat diketahui normalitas data. Uji z dan

uji wilcoxon hanya dapat digunakan untuk menguji perbedaan pada 2 kelompok,

sehingga akan dilakukan pengujian antara algorima run length, huffman dan half byte yang meliputi ukuran hasil kompresi, waktu kompresi, dan waktu dekompresi.

Dalam penelitian ini akan dilakukan 9 pengujian, yaitu :

a. Uji terhadap hasil kompresi algoritma run length dan algoritma huffman.

b. Uji terhadap hasil kompresi algoritma run length dan algoritma half byte.

c. Uji terhadap hasil kompresi algoritma huffman dan algoritma half byte.

d. Uji terhadap waktu kompresi algoritma run length dan algoritma huffman.

e. Uji terhadap waktu kompresi algoritma run length dan algoritma half byte.

(3)

g. Uji terhadap waktu dekompresi algoritma run length dan algoritma huffman.

h. Uji terhadap waktu dekompresi algoritma run length dan algoritma half byte.

i. Uji terhadap waktu dekompresi algoritma huffman dan algoritma half byte.

3.2 Hipotesis

Melalui pengujian aplikasi dan menganalisis kinerja dari algoritma run length, huffman dan half byte yang meliputi hasil kompresi, waktu kompresi, dan waktu

dekompresi, maka akan digunakan uji hipotesis untuk membuktikan adanya perbedaan antara kedua algoritma tersebut dalam hal ukuran kompresi, waktu kompresi, dan waktu dekompresi. Hipotesis yang digunakan dalam penelitian ini adalah :

♦ ada perbedaan hasil pemampatan antara algoritma run length dengan algoritma huffman.

♦ ada perbedaan hasil pemampatan antara algoritma run length dengan half byte. ♦ ada perbedaan hasil pemampatan antara algoritma huffman dengan half byte.

♦ ada perbedaan waktu kompresi antara algoritma run length dengan algoritma huffman.

♦ ada perbedaan waktu kompresi antara algoritma run length dengan algoritma half byte.

♦ ada perbedaan waktu kompresi antara algoritma huffman dengan algoritma half byte. ♦ ada perbedaan waktu dekompresi antara algoritma run length dengan algoritma

huffman.

♦ ada perbedaan waktu dekompresi antara algoritma run length dengan algoritma half byte.

(4)

♦ ada perbedaan waktu dekompresi antara algoritma huffman dengan algoritma half byte.

Hipotesis dalam penelitian ini menyatakan bahwa ada perbedaan rata-rata antara kedua algoritma dilihat dari hasil kompresi, waktu kompresi, dan waktu dekompresi. Untuk menguji hipotesis tersebut digunakan uji z jika distribusi data normal dan uji

wilcoxon jika distribusi data tidak normal yang berdasarkan pada data-data statistik yang

dihasilkan dari hasil percobaan dengan menjalankan aplikasi yang dibuat terhadap 50 data teks. Dari hasil pengujian akan ditentukan apakah hipotesis yang ada dapat diterima.

3.3 Desain Penelitian

Gambar 3.1 Variabel yang Diamati.

Pada penelitian ini terdapat tiga variabel yang diamati, yaitu hasil kompresi, waktu kompresi, dan waktu dekompresi. Dengan menggunakan teknik kompresi yang berbeda dari masing-masing algoritma kompresi data, maka akan didapatkan hasil yang berbeda pula yang meliputi tiga variabel yang diteliti. Pada penelitian ini yang merupakan variabel terikat atau tidak bebas adalah hasil kompresi, waktu kompresi, dan waktu dekompresi sedangkan yang merupakan variabel bebas adalah algoritma kompresi

Hasil kompresi Waktu kompresi Waktu dekompresi algoritma kompresi data

antara run length, huffman,

(5)

data antara run length, huffman dan half byte. Penelitian ini bertujuan untuk

membandingkan teknik kompresi dari algoritma run length, huffman dan half byte

terhadap tiga variabel terikat, yaitu hasil kompresi, waktu kompresi, dan waktu dekompresi.

3.4 Teknik Pengumpulan Data

Pada penelitian ini, pengumpulan data dilakukan dengan observasi langsung terhadap hasil percobaan, di mana data didapatkan dari hasil pengukuran dengan menggunakan aplikasi yang dibuat berdasarkan teknik kompresi atau pemampatan dengan algoritma run length, huffman dan half byte.

3.5 Teknik Analisis Data

Untuk menghitung rasio kompresi digunakan rumus sebagai berikut :

Ratio : 100% asli ukuran kompresi hasil ukuran ×

Sedangkan rumus untuk uji Z digunakan jika data berdistribusi normal adalah :

1 ) ( ) ( 2 2 2 − − =

n n x x S ; Z = ) / ( ) / ( ) ( 2 2 2 1 2 1 2 1 n s n s d x x o + − − = 1

x nilai tengah sampel pertama

=

2

x nilai tengah sampel kedua

=

2 1

s ragam sampel pertama

=

2 2

s ragam sampel kedua

=

1

(6)

=

2

n jumlah sampel kedua

Rumus untuk digunakan pada uji wilcoxon jika data tidak berdistribusi normal adalah :

= += n i i R w 1 4 ) 1 ( + = + n n w μ ; 24 ) 1 2 ( ) 1 ( 2 = + + + n n n w σ + + − = + w w hitung w Z σ μ ) ( +

w = jumlah rank yang positif

Ri = rank pada di yang positif

μw+ = nilai tengah untuk rank perbedaan yang positif

σ2w+ = ragam untuk rank perbedaan yang positif n = jumlah total rank yang diamati

3.6 Perancangan Aplikasi

Dalam melakukan penelitian ini dibuat suatu aplikasi pendukung berupa aplikasi kompresi data dengan menggunakan bahasa pemrograman borland delphi 6. Melalui aplikasi ini akan dilakukan pemampatan atau kompresi terhadap data berupa teks dengan menggunakan algoritma run length, huffman dan half byte serta kemudian

membandingkan ketiga algoritma tersebut dalam hal ukuran rasio pemampatan, waktu pemampatan, dan waktu dekompresi. Berikut adalah skema menu dari program aplikasi :

(7)

Gambar 3.2 Rancangan Menu Utama.

3.6.1 Perancangan Menu

Gambar 3.3 State Transition Diagram Aplikasi.

Main Menu Compression Pilih compression memilih menu compression Algoritma Run length, Huffman, atau Half byte

Pilih algoritma kompresi memampatkan file

Exit Klik tombol exit

keluar dari program

Save Klik tombol save

menyimpan file kompresi Decompression Pilih decompression memilih menu decompression Open File

Klik tombol input file menginput file

Open File Klik tombol input file

menginput file

Decompression

Klik tombol decompression mendekompresi file

Save to original file Klik tombol save to original file

menyimpan file dekompresi Help

Klik menu help Menampilkan menu help

How to use Klik menu how to use menampilkan menu how to use About Klik menu about

menampilkan menu about

Main Menu

(8)

3.6.1.1 Menu Compression

Gambar 3.4 Tampilan Menu Compression

Pada tampilan menu compression terdiri dari keterangan nama file, ukuran file,

waktu kompresi, pilihan compression dan decompression serta beberapa tombol dengan

fungsi sebagai berikut :

● Open file berfungsi untuk menginputfile yang akan dikompres.

Run length berfungsi untuk memampatakan file dengan algoritma run length.Huffman berfungsi untuk memampatakan file dengan algoritma huffman. ● Half byte berfungsi untuk memampatkan file dengan algoritma half byte.Save berfungsi untuk menyimpan hasil kompresi.

Exit berfungsi untuk menutup program aplikasi.

Proses untuk menggunakan menu ini dimulai dengan menginput sebuah file dan akan

(9)

kompresi yang terdiri atas tiga algoritma. Setelah itu akan muncul hasil berupa keterangan ukuran rasio dan waktu kompresi dari masing-masing algoritma yang dipilih serta dapat disimpan hasilnya dengan menekan tombol save.

3.6.1.2 Menu Decompression

Gambar 3.5 Tampilan Menu Decompression.

Pada tampilan menu decompression terdiri dari keterangan nama file, ukuran file, waktu dekompresi, pilihan compression dan decompression serta beberapa tombol

dengan fungsi sebagai berikut :

Open file berfungsi untuk menginputfile yang akan didekompres. ● Decompress berfungsi untuk melakukan proses dekompresi file.save to original file berfungsi untuk menyimpan hasil dekompresi. ● Exit berfungsi untuk menutup program aplikasi.

(10)

Proses untuk menggunakan menu ini dimulai dengan menginput sebuah file dan akan

muncul keterangan nama file dan ukuran file yang telah dikompres. Kemudian menekan

tombol decompress. Setelah itu akan muncul hasil berupa keterangan ukuran file asli dan

waktu dekompresi dari masing-masing algoritma yang telah dipilih serta dapat disimpan hasilnya dengan menekan tombol save to original file.

3.6.2 Perancangan Modul

Implementasi program untuk masing-masing algoritma dapat dijelaskan melalui modul-modul yang digunakan dalam aplikasi ini, yaitu :

♦ Modul Run Length

Pertama yang dilakukan adalah dengan mencari karakter yang berulang lebih dari 3 kali pada suatu file yang diinput untuk kemudian diubah menjadi sebuah bit

penanda diikuti oleh sebuah bit yang memberikan informasi jumlah karakter yang

berulang dan kemudian diakhiri dengan karakter yang dikompres. File hasil pemampatan dengan algoritma Run Length harus ditandai pada awal datanya sehingga sewaktu

pengembalian ke file asli dapat dikenali apakah file tersebut benar merupakan hasil

pemampatan dengan algoritma ini. Pada program ini format pengenal file tersebut ditulis

pada byte pertama, kedua dan ketiga dengan karakter R, U, dan N. Kita dapat mengganti

format tersebut dengan karakter lain yang diinginkan, demikian juga dengan jumlahnya. Karakter berikutnya (keempat) berisi karakter bit penanda yang telah ditentukan

dengan mencari karakter dengan frekuensi kemunculan terkecil. Jika misalnya pada suatu filebit penandanya adalah X, maka 4 byte pertama isi file pemampatan adalah :

R U N X . . . Bit ke- 1 2 3 4 5 . . .

(11)

Karakter kelima dan seterusnya berisi hasil pemampatan dengan algoritma Run length seperti yang telah dijelaskan sebelumnya. Untuk lebih jelasnya berikut adalah

tahapan-tahapan dalam modul run length :

- Pertama memberikan pengenal file pada byte pertama, kedua, dan ketiga dengan

karakter R,U,N sehingga memudahkan dalam proses pengembalian ke file

semula.

- Membaca semua karakter yang terdapat pada file apakah terdapat deretan

karakter yang berulang lebih dari tiga karakter, jika memenuhi lakukan pemamapatan.

- Berikan bit penanda pada file pemampatan berupa 8 deretan bit untuk

manandakan bahwa karakter berikutnya adalah karakter pemampatan, sehingga memudahkan dalam pengembalian ke file aslinya. Pemilihan bit penanda ini

tidak boleh sama dengan karakter dalam file. Untuk menjaga agar hal tersebut

tidak terjadi, jika pada file asli terdapat karakter yang sama dengan bit penanda,

maka pada file pemampatan karakter tersebut ditulis sebanyak dua kali secara

berturutan. Pada saat pengembalian ke file asli, jika ditemukan bit penanda yang

berderetan sebanyak dua kali, hal itu berarti karakter tersebut bukan bit penanda,

tapi karakter asli dari file aslinya.

- Tambahkan deretan bit untuk menyatakan jumlah karakter yang sama berurutan.

- Selanjutnya dengan menambahkan deretan bit yang menyatakan karakter yang

(12)

♦ Modul Halfbyte

Modul ini dugunakan untuk melakukan proses kompresi dengan algoritma half byte. Metode ini melakukan kompresi dengan cara mengambil empat bit sebelah kiri

yang sering sama secara berurutan. Seperti pada algoritma run length, file hasil

pemampatan dengan algoritma halfbyte harus ditandai pada awal datanya sehingga

sewaktu pengembalian ke file asli dapat dikenali apakah file tersebut benar merupakan

hasil pemampatan dengan algoritma ini. Pada program ini format pengenal file tersebut

ditulis pada byte pertama, kedua dan ketiga dengan karakter H, A, dan L. Kita juga dapat

mengganti format tersebut dengan karakter lain yang diinginkan, demikian juga dengan jumlahnya.

Karakter berikutnya (keempat) berisi karakter bit penanda yang telah ditentukan

dengan mencari karakter dengan frekuensi kemunculan terkecil. Jika misalnya pada suatu file bit penandanya adalah Q, maka 4 byte pertama isi file pemampatan adalah :

H A L Q . . . Bit ke- 1 2 3 4 5 . . .

Karakter kelima dan seterusnya berisi hasil pemampatan dengan algoritma half byte

seperti yang telah dijelaskan sebelumnya. Untuk lebih jelasnya berikut adalah tahapan-tahapan dalam modul halfbyte :

- Pertama memberikan pengenal file pada byte pertama, kedua, dan ketiga dengan

karakter H,A,L sehingga memudahkan dalam proses pengembalian ke file

semula.

- Setelah itu melihat apakah terdapat deretan karakter yang 4 bit pertamanya sama

(13)

Berikan bit penanda pada file pemampatan, bit penanda disini berupa 8 deretan bit (1 byte) yang boleh dipilih sembarang asalkan digunakan secara konsisten

pada seluruh bit penanda pemampatan. Bit penanda ini berfungsi untuk menandai

bahwa karakter selanjutnya adalah karakter pemampatan sehingga tidak membingungkan pada saat mengembalikan ke file semula . Pemilihan bit

penanda diusahakan dipilih pada karakter yang paling sedikit jumlahnya terdapat pada file yang akan dimampatkan, sebab jika pada file asli ditemukan karakter

yang sama dengan bit penanda, terpaksa anda harus menulis karakter tersebut

sebanyak dua kali pada file pemampatan. Hal ini harus dilakukan untuk

menghindari kesalahan mengenali apakah bit penanda pada file pemampatan

tersebut benar-benar bit penanda atau memang karakter dari file yang asli. Untuk

menjaga agar hal tersebut tidak terjadi, jika pada file asli terdapat karakter yang

sama dengan bit penanda, maka pada file pemampatan karakter tersebut ditulis

sebanyak dua kali secara berturutan. Pada saat pengembalian ke file asli, jika

ditemukan bit penanda yang berderetan sebanyak dua kali, hal itu berarti karakter

tersebut bukan bit penanda, tapi karakter asli dari file aslinya. Pada kasus lain

dapat terjadi penggabungan 4 bit kanan menghasilkan sebuah karakter yang sama

dengan bit penanda sehingga diduga karakter itu adalah bit penutup. Untuk

menjaga agar hal tersebut tidak terjadi, jika terdapat penggabungan 4 bit kanan yang menghasilkan sebuah karakter yang sama dengan bit penanda, maka

deretan file tersebut tidak usah dimampatkan. Selain itu jika ditemukan kasus

jumlah karakter berurutan yang memiliki 4 bit pertama sama jumlahnya genap

(14)

- Tambahkan karakter pertama 4 bit kiri berurutan dari file asli.

- Gabungkan 4 bit kanan karakter kedua dan ketiga kemudian tambahkan ke file

pemampatan.

- Selanjutnya diakhiri dengan bit penanda pada file pemampatan. ♦ Modul Huffman

Pada modul ini dilakukan proses kompresi dengan menggunakan algoritma

huffman. Metode ini pada awalnya menghitung frekuensi kemunculan masing-masing

karakter dan kemudian diurutkan dari yang frekuensi terkecil sampai yang terbesar. Setelah itu dibuat pohon huffman berdasarkan frekuensi dari karakter yang ada, sehingga

diperoleh kode huffman. Seperti pada kedua algoritma sebelumnya, file hasil

pemampatan dengan algoritma huffman harus ditandai pada awal datanya sehingga

sewaktu pengembalian ke file asli dapat dikenali apakah file tersebut benar merupakan

hasil pemampatan dengan algoritma ini.

Pada program ini format pengenal file tersebut ditulis pada byte pertama, kedua

dan ketiga dengan karakter H, U, dan F. Kita juga dapat mengganti format tersebut dengan karakter lain yang diinginkan, demikian juga dengan jumlahnya.

Karakter keempat, kelima dan keenam berisi informasi ukuran file asli dalam byte, 3

karakter ini dapat berisi maksimal FFFFFF H atau 16.777.215 byte. Karakter ketujuh

berisi informasi jumlah karakter yang memiliki kode huffman atau dengan kata lain

jumlah karakter yang frekuensi kemunculannya pada file asli lebih dari nol, jumlah

tersebut dikurangi satu dan hasilnya disimpan pada karakter ke tujuh pada file

pemampatan. Misalnya suatu file dengan ukuran 3.000 byte dan seluruh karakter ASCII

terdapat pada file tersebut, jadi :

(15)

Karena 3.000 = BB8 H, maka : Karakter 4-6 : 000BB8

Karena seluruh karakter ASCII terdapat pada file tersebut, jadi jumlah karakter yang memiliki kode Huffman adalah 256 buah, 256-1=255 = FF H maka :

Karakter 7 : FF

Maka 7 byte pertama isi file pemampatan adalah :

H U F Chr (00H) Chr (0BH) Chr (B8H) Chr (FFH) . . . Bit ke- 1 2 3 4 5 6 7 8 . . .

Mulai dari karakter ke delapan berisi daftar kode huffman berturut-turut karakter (1 byte), kode huffman (2 byte) dan panjang kode Huffman (1 byte). 4 byte berturutan ini

diulang untuk seluruh karakter yang dikodekan. Selanjutnya file diisi hasil pemampatan

dengan algoritma huffman seperti yang telah dijelaskan sebelumnya.

Agar lebih jelas kita ulangi contoh sebelumnya, yaitu file yang berisi karakter

“PERKARA”. Jika file ini dimampatkan dengan metode huffman, maka file hasil

pemampatan akan kita dapatkan sebagai berikut : Karakter 1-3 : HUF = 48 55 46 H

Karena file tersebut berukuran 7 byte, jadi : Karakter 4-6 : 00 00 07 H.

Daftar kode huffman telah kita cari pada bab sebelumnya yaitu :

E = 010 K = 011 P = 00 A = 10 R = 11

(16)

Karena jumlah karakter yang memiliki kode huffman ada 5 buah, maka 5-1=4.

Karakter 7 : 04 H.

Karakter 8 : karakter E = 45 H.

Karena kode Huffman dari karakter E adalah 010, sedangkan tempat yang disediakan

sebanyak 2 byte maka karakter 9 dan 10 menjadi 00000000 00000010 B. Karakter 9 : 00000000 B = 00 H.

Karakter 10 : 00000010 B = 02 H.

Panjang kode Huffman dari karakter E adalah 3 bit (010), jadi :

Karakter 11: 03H.

Cara tersebut di atas diulang untuk karakter K, P, A dan R sehingga didapat : Karakter 12: karakter K = 4B H. Karakter 13: 00000000 B = 00 H. Karakter 14: 00000011 B = 03 H. Karakter 15: 03H. Karakter 16: karakter P = 50 H. Karakter 17: 00000000 B = 00 H. Karakter 18: 00000000 B = 00 H. Karakter 19: 02H. Karakter 20: karakter A = 41 H. Karakter 21: 00000000 B = 00 H. Karakter 22: 00000010 B = 02 H. Karakter 23: 02H. Karakter 24: karakter R = 52 H. Karakter 25: 00000000 B = 00 H.

(17)

Karakter 26: 00000011 B = 03 H. Karakter 27: 02H.

Selanjutnya pemampatan karakter-karakter “PERKARA” adalah : 0001011011101110. Jika kita potong-potong menjadi 8 bit tiap bagian akan menjadi :

00010110 = 16 H. 11101110 = EE H.

Jadi : Karakter 28 : 16 H. Karakter 29 : EE H.

File hasil pemampatan akan menjadi berukuran 29 byte yang dalam heksadesimal

berisi:

48 55 46 00 00 07 04 45 00 02 03 4B 00 03 03 50 00 00 02 41 00 02 02 52 00 03 02 16 EE

Jika kita bandingkan dengan file aslinya yang berukuran 7 byte, hasil ini bukan menjadi

lebih kecil, tapi malah menambah byte sebesar 29-7=22 byte. Hal ini wajar dalam file

yang berukuran sangat kecil seperti ini, tapi dalam file-file yang berukuran besar,

algoritma huffman ini sangat efektif. Untuk lebih jelasnya berikut adalah tahapan-tahapan

dalam modul huffman :

- Memberikan pengenal file pada byte pertama, kedua, dan ketiga dengan karakter

H,U,F, sehingga memudahkan dalam proses pengembalian ke file semula.

- Selanjutnya adalah menghitung frekuensi kemunculan masing-masing karakter dan mengurutkan dari terkecil sampai terbesar.

- Membuat huffman tree berdasarkan frekuensi kemunculan dari masing-masing

karakter untuk mencari kode huffman. Setelah itu berikan tanda bit 0 pada setiap

(18)

- Untuk mendapatkan kode huffman masing-masing karakter, ditelusuri karakter

tersebut dari node yang paling atas sampai ke node karakter tersebut dan susunlah bit-bit yang dilaluinya. Bit-bit yang dilalui itulah yang merupakan kode huffman. Kode-kode inilah yang menggantikan ukuran bit dari file semula.

♦ Modul Decompress

Modul ini digunakan untuk melakukan proses pengembalian file yang telah

dikompres menjadi file semula. Dalam modul ini proses pengembalian file dilakukan

dengan cara membaca algoritma yang digunakan dalam file yang telah dikompres. Jika

pada saat pembacaan file ditemukan format pengenal file RUN, maka file itu dikompres

dengan algoritma run length, jika dibaca format pengenal filenya adalah HAL, maka file

itu menggunakan algoritma half byte, dan jika dibaca format filenya adalah HUF, maka file tersebut menggunakan algoritma huffman. Setelah ditemukan pengenal filenya, baru

kemudian dilakukan proses dekompresi menurut algoritma yang terdapat pada file yang

telah dikompres tersebut. Untuk lebih jelasnya berikut adalah tahapan-tahapan untuk proses dekompresi dari masing-masing algoritma :

● Proses dekompresi untuk algoritma run length

- Pertama membaca pengenal file yang digunakan pada file yang telah dikompresi,

apakah menggunakan pengenal file berupa karakter R,U, dan N, jika memenuhi

baru dapat dilakukan proses berikutnya.

- Mengecek karakter pada hasil pemampatan satu-persatu dari awal sampai akhir, jika ditemukan bit penanda, lakukan proses pengembalian.

- Lihat karakter setelah bit penanda, konversikan ke bilangan desimal untuk

(19)

- Lihat karakter berikutnya, kemudian lakukan penulisan karakter tersebut sebanyak bilangan yang telah diperoleh pada karakter sebelumnya.

● Proses dekompresi untuk algoritma halfbyte

- Pertama membaca pengenal file yang digunakan pada file yang telah dikompresi,

apakah menggunakan pengenal file berupa karakter H,A, dan L, jika memenuhi

baru dapat dilakukan proses berikutnya.

- Lihat karakter pada hasil pemampatan satu-persatu dari awal sampai akhir, jika ditemukan bit penanda, lakukan proses pengembalian.

- Selanjutnya lihat karakter setelah bit penanda, tambahkan karakter tersebut pada file pengembalian.

- Lihat karakter berikutnya, jika bukan bit penanda, ambil 4 bit kanan dan kiri lalu

gabungkan dengan 4 bit kiri karakter di atasnya. Hasil gabungan tersebut

ditambahkan pada file pengembalian. Lakukan sampai ditemukan bit penanda. ● Proses dekompresi untuk algoritma huffman

- Pertama membaca pengenal file yang digunakan pada file yang telah dikompresi,

apakah menggunakan pengenal file berupa karakter H,U, dan F, jika memenuhi

baru dapat dilakukan proses berikutnya.

- Untuk proses pengembalian ke file aslinya, kita harus mengacu kembali kepada

kode huffman yang telah dihasilkan.

- Ambillah satu-persatu bit hasil pemampatan mulai dari kiri, jika bit tersebut

termasuk dalam daftar kode, lakukan pengembalian, jika tidak ambil kembali bit

(20)

3.7 Spesifikasi Perangkat Keras dan Perangkat Lunak 3.7.1 Spesifikasi Perangkat Keras

Perangkat keras yang digunakan adalah komputer dengan spesifikasi : ● Prosesor AMD Athlon XP 2100+ ≈ 1.76 Ghz

● Memori DDR 512 MB

● Harddisk dengan kapasitas 80 GB

3.7.2 Spesifikasi Perangkat Lunak

Perangkat lunak yang digunakan dalam penelitian ini adalah : ● Sistem operasi : Microsoft Windows XP Proffesional ● Bahasa pemrograman : Borland Delphi 6

SoftwareSPSS versi 11

Gambar

Gambar 3.1 Variabel yang Diamati.
Gambar 3.3 State Transition Diagram Aplikasi. Main MenuCompressionPilih compressionmemilih menu compressionAlgoritma Run length, Huffman,
Gambar 3.4 Tampilan Menu Compression
Gambar 3.5 Tampilan Menu Decompression.

Referensi

Dokumen terkait

Data iniS sejalan dengan teori yang menyatakan bahwa kesulitan dengan Kegiatan aktivitas sehari -hari adalah umum pada pasien dengan gagal jantung,

مهف ؾوتمكأ تادرفلدا ( تادرفلدا مهف ) صنلاك مفلا قيرط نع ءاوس دح ىلع. ءاسي لا تىح ةبسانمك ةديج تادرفلدا رايتخا بلطتي ةباتكلا في ةلمتلمحا

Berdasarkan hasil dari identifikasi secara morfologi dan biokimia, menunjukkan bahwa isolat bakteri CS7 termasuk ke dalam genus Bacillus koloni bakteri berwarna

Kegiatan ekspor karet alam mempunyai peranan yang besar terhadap peningkatan pendapatan Propinsi Kalimantan Barat. Oleh karenanya perlu dilakukan upaya meningkatkan

 Pada pendekatan biologi, tujuan pemanfaatan hutan adalah memilih periode rotasi yang akan menghasilkan produksi yang lestari  MSY (Maksimum sustainable yield).  Gambar

Menurut Fatah (2008: 73-75) kompetensi pedagogik adalah kemampuan seorang pendidik dalam mengelola pembelajaran peserta didik yang dapat dilihat dari indikator

Untuk keberhasilan pengobatan dengan TC, beberapa faktor kunci yang harus dipertimbangkan adalah diagnosis yang akurat, memilih obat yang benar, mengingat potensi,

b) Analisis siswa ; Langkah yang dilakukan pada tahap ini menelaah karakteristik siswa yang sesuai dengan materi yang dikembangkan. Pada tahap ini peneliti