Perbandingan Algoritma Even-Rodeh Code dan Algoritma Variable Length Binary Encoding (VLBE) Pada Kompresi File Teks

69

LISTING PROGRAM
1. Rodeh
Even- Code
// fungsi untuk membangkitkan kode even-rodeh
public static String GetEvenRodeh(int n)
{
StringBuilder sb = new StringBuilder();
if (n < 4)
{
String c = DecToBin(n);
int lc = c.Length;
for (int i = 0; i < 3 - lc; i++)
sb.Append("0");
sb.Append(c);
return sb.ToString();
}
if (n >= 4 && n < 8)
{
sb.Append(DecToBin(n));

sb.Append("0");
return sb.ToString();
}
String nbin = DecToBin(n);
sb.Append(DecToBin(nbin.Length));
sb.Append(nbin);
sb.Append("0");
return sb.ToString();
}

//fungsi untuk algoritma even-rodeh code
public static void EvenRodehCodes(String st)
{
int[] freq = CountFreq(st);
String charset = GetCharSet(st);
int t = charset.Length;
InsertionSort(freq, charset);
freq = fr;
charset = cs;
erc = new String[t];

int c = 0;
for (int n = 0; n < t; n++)
erc[c++] = GetEvenRodeh(n);
}

2. Variable Length Binary Encoding
// mengubah strings menajadi stringbits
public static String StringToStb(String

Universitas Sumatera Utara

70

st, String c, String[] s)
{
StringBuilder stb = new StringBuilder();
for (int i = 0; i < st.Length; i++)
{
String z = Char.ToString(st[i]);
int k = c.IndexOf(z);

stb.Append(s[k]);
}
int x = stb.Length % 8;
int pad = 0;
if (x != 0)
{
pad = 8 - x;
for (int i = 0; i < pad; i++)
stb.Append("0");
}
String d = DecToBin(pad);
int y = 8 - d.Length;
for (int i = 0; i < y; i++)
stb.Append("0");
stb.Append(d);
return stb.ToString();
}

Universitas Sumatera Utara


71

// fungsi untuk algoritma vlbe
public static void VLBE(String st)
{
int[] freq = CountFreq(st);
String charset = GetCharSet(st);
int t = charset.Length;
InsertionSort(freq, charset);
freq = fr;
charset = cs;
vlbe = new String[t];
vlbe[0] = "0";
StringBuilder v;
for (int n = 1; n < t - 1; n++)
{
v = new StringBuilder(vlbe[n - 1]);
v.Insert(0, "1");
vlbe[n] = v.ToString();
}

v = new StringBuilder(vlbe[t - 2]);
v.Replace("0", "1");
vlbe[t - 1] = v.ToString();
}

Universitas Sumatera Utara

69

DAFTAR RIWAYAT HIDUP

Data Pr ibadi
Nama

: Ade Rani Abdullah

Tempat/Tanggal Lahir

: Padangsidimpuan, 10
November 1993


Tinggi/Berat Badan

: 160 cm / 45 kg

Agama

: Islam

Kewarganegaraan

: Indonesia

Alamat Sekarang

: Jalan Pelita 2 No. 84

Alamat Orang Tua

: Jalan Soripada Mulia Gg. Sarasi 9 No. 32


Telp/ Hp

: 0878 6817 2249

Email

: aderaniabdullah@gmail.com

--------------------------------------------------------------------------------------------------------

Riwayat Pendidikan
[2012 – sekarang]

: S1 Ilmu Komputer Universitas Sumatera Utara

[2009 – 2012]

: SMA Negeri 4 Padangsidimpuan


[2006 – 2009]

: MTs YPKS Padangsidimpuan

[2000 – 2006]

: SD Negeri Pitara I Depok

--------------------------------------------------------------------------------------------------------

Keahlian/Kur sus
Keahlian Komputer
Pemrograman

: C#

Database

: MySQL


Multimedia

: Adobe Flash

Perkantoran

: Microsoft Office

--------------------------------------------------------------------------------------------------------

Universitas Sumatera Utara

70

Pengalaman Organisasi
[2010 – 2011]

Anggota Hubungan Masyarakat OSIS SMA Negeri 4
Padangsidimpuan


[2012 – 2013]

Anggota Dana IMAKOPASID

[2015 – sekarang]

Sekretaris Departemen Hubungan Masyarakat IMILKOM USU

--------------------------------------------------------------------------------------------------------

Pengalaman Kepanitiaan
[2012]

Anggota Humas Dies Natalis 11th S1 Ilmu Komputer USU

[2013]

Anggota Konsumsi ARTechno

[2013]


Anggota Humas Ilkom Goes To School (IGTS)

[2014]

Anggota Humas Porseni Imilkom

[2014]

Anggota Dana PMB S1 Ilmu Komputer USU

--------------------------------------------------------------------------------------------------------

Seminar
[2013]

Seminar Internasional Forum Bisnis (MIBEX 2013)

[2013]

Seminar Nasional Gelora Literasi Teknologi Informasi & Komunikasi
“SI GELITIK”

[2014]

Seminar Nasional Literasi Informasi “SENARAI”

Universitas Sumatera Utara

69

DAFTAR PUSTAKA

Andika, R. 2014. Implementasi metode punctured elias codes pada kompresi file text.
Skripsi. Universitas Sumatera Utara.

Cheng, K. S., Young, G. H. & Wong, K. F., 1999. A study on word-based and
integral-bit chinese text compression algorithms. Journal of the America
Society for Information Science 50(3): 218-228

Erdiansyah, U. 2014. Perbandingan algoritma elias delta code dengan levenstein untuk
kompresi file teks. Skripsi. Universitas Sumatera Utara.

Fenwick, P. 1996. Punctured elias codes for variable-length coding of the integers.
Technical Report 137(12): 2-3.

Gács, P. & Lovász, L., 1999. Complexity of Algorithms. Spring: London.

Gilbert, E. N., & Moree, E. F. 1959. Variable-length binary encodings. Bell System
Technical Journal 38(4): 933-967.

Gozali, F. & Mervyn. 2004. Analisis perbandingan kompresi data dengan teknik
arithmetic coding dan run length encoding. JETri 4(1): 37-52.

Kodituwakku, S. R. 2005. Comparison of lossless data compression algorithms for
text data. Indian Journal of Computer Science and Engineering 1(4): 416425.

Pramilo, C. 2008. Studi perbandingan algoritma huffman dan LZW (Lempel Ziv
Welch) pada pemampatan file teks. Skripsi. Universitas Sumatera Utara.

Pu, I. M. 2006. Fundamental Data Compression. Jordan Hill: Oxford.

Universitas Sumatera Utara

70

Salomon, D. 2007. Variable-Length Codes for Data Compression. Springer: London
Salomon, D. & Motta, G. 2010. Handbook of Data Compression. Fifth Edition.
Springer: London.

Sarifah. 2010. Analisis kinerja dan implementasi algoritma kompresi arithmetic
coding pada file teks dan citra digital. Skripsi. Universitas Sumatera Utara.

Suarga. 2006. Algoritma dan Pemrograman. Yogyakarta: Andi.

Tsukiyama, T., Yashiki H., & Hirose O. 1989. Method and apparatus for data
compression and restroration. United States Patent 07: 1-6.

Viliana, D. 2014. Perbandingan kinerja algoritma fixed length binary encoding (flbe)
dengan variable length binary encoding (vlbe) dalam kompresi text file.
Skripsi. Universitas Sumatera Utara.

Wahyudi, B. 2004. Pengantar Struktur Data dan Algoritma. Yogyakarta: Andi.

Ziv, J., & Lempel, A. 1977. A universal algorithm for sequential data compression.
IEEE Transactions on Information Theory 23(3): 337-343.

Universitas Sumatera Utara

BAB 3
ANALISIS DAN PERANCANGAN SISTEM

3.1

Analisis Sistem

Analisis sistem adalah bagian dari pembangunan sistem untuk menentukan proses
input, pengolahan data, dan output dari sebuah sistem. Adapun tahapan-tahapan yang
dilakukan dalam menganalisis sebuah sistem yaitu:

3.1.1. Analisis masalah
Analisis masalah merupakan proses mengidentifikasi sebab dan akibat dibangunnya
sebuah sistem agar sistem yang akan dibangun tersebut dapat berjalan sebagaimana
mestinya sesuai dengan tujuan dari sistem itu. Permasalahan yang diangkat dari
penelitian ini adalah bagaimana memperkecil ukuran file teks yaitu dengan
mengurangi adanya redundansi pada file teks tersebut sehingga dihasilkan file yang
memiliki ukuran yang lebih kecil guna untuk menghemat pemakaian media
penyimpanana data dan mempercepat transmisi atau memindahkan data. Kompresi
data menggunakan algoritma Even-Rodeh Code dan Variable Length Binary Encoding
(VLBE). Pada penelitian ini file teks yang digunakan yaitu file *.rtf.
Diagram Ishikawa adalah diagram yang dapat menggambarkan hubungan
sebab akibat dalam sebuah sistem. Analisa masalah lebih jelas melalui diagram
Ishikawa yang dapat dilihat pada Gambar 3.1.

Universitas Sumatera Utara

19

Gambar 3.1 Diagram Ishikawa
Pada Gambar 3.1 dapat dilihat bahwa terdapat empat kategori penyebab masalah pada
penelitian Perbandingan Algoritma Even-Rodeh Code dan Algoritma Variable Length
Binary Encoding (VLBE) pada Kompresi File Teks yang digambarkan dengan tanah
panah yang mengarah ke tulang utama, yaitu berkaitan dengan Material, Metode,
Manusia, dan Sistem. Setiap detail penyebab masalah tersebut digambarkan dengan
tanda panah yang mengarah pada masing-masing kategori.
3.1.2. Analisis persyaratan
Analisis persyaratan dapat dikelompokkan menjadi dua bagian yaitu: persyaratan
fungsional dan persyaratan non-fungsional.

a. Per syar atan Fungsional
Persyaratan fungsional merupakan persyaratan yang menyatakan proses apa yang
harus dapat dilakukan suatu sistem atau aplikasi. Dalam aplikasi yang akan dibangun
ini, membandingkan algoritma Even-Rodeh Code dan algoritma Variable Length
Binary Encoding (VLBE) pada kompresi file teks. Adapun persyaratan fungsional
yang harus dimiliki sistem ini yaitu:
1. Sistem harus mampu membaca string yang berada dalam file teks.
2. Sistem harus mampu melakukan kompresi data terhadap file teks dengan ekstensi
file *.rtf dengan metode Even-Rodeh Code dan Variable Length Binary Encoding
(VLBE).
3. Sistem harus mampu melakukan dekompresi data terhadap hasil kompresi dengan
metode Even-Rodeh Code dan Variable Length Binary Encoding (VLBE) ke file
aslinya yaitu file teks dengan ekstensi *.rtf.

Universitas Sumatera Utara

20

b. Per syar atan Non-Fungsional
Persyaratan non-fungsional adalah persyaratan yang dimiliki suatu sistem yang
menggambarkan karakteristik dan batasan kemampuan suatu sistem yang akan
menjadi dasar penentuan apakah daya guna suatu sistem sudah baik atau belum.
Adapun persyaratan non-fungsional yang harus dipenuhi diantaranya:
1. Performa
Sistem melakukan proses kompresi dan dekompresi dengan waktu yang relative
singkat.
2. Informasi
Sistem harus mampu menyediakan informasi tentang data yang akan digunakan
pada sistem.
3. Ekonomi
Sistem dapat bekerja dengan baik tanpa harus mengeluarkan biaya tambahan
dalam penggunaan perangkat keras maupun perangkat lunak.
4. Kontrol
Sistem yang telah dibangun harus tetap dikontrol setelah selesai dirancang agar
fungsi dan kinerja sistem tetap terjaga dan dapat memberikan hasil yang sesuai
dengan keinginan pengguna.
5. Efisiensi
Sistem harus dirancang sesederhana mungkin agar memudahkan pengguna dalam
menggunakan atau menjalankan aplikasi tersebut.

3.1.3. Pemodelan Sistem
Pada bagian pemodelan sistem, akan dirancang bagaimana nantinya sistem diharapkan
bekerja. Pemodelan ini menggunakan UML (Unified Modelling Languange).

a.

Use case diagram

Use case diagram digunakan untuk menggambarkan hubungan atau interaksi antara
sistem dengan pengguna. Diagram ini menggambarkan sebagia besar kebutuhan
fungsional yang telah dirincikan sebelumnya. Use case diagram untuk kebutuhan
fungsional ini dapat dilihat pada Gambar 3.2.

Universitas Sumatera Utara

21

Gambar 3.2 Use Case Diagram pada sistem
Use Case Diagram pada Gambar 3.2 menjelaskan bahwa sistem dapat diakses
oleh seorang aktor yang dinamakan pengguna. Terdapat dua use case utama pada
sistem yang menggambarkan dua algoritma yang digunakan, yaitu algoritma EvenRodeh Code dan Variable Length Binary Encoding (VLBE).

b. Activity diagram pada proses kompresi Even-Rodeh Code
Pada proses kompresi algoritma Even-Rodeh Code, aktivitas yang berlangsung dapat
digambarkan pada activity diagram pada gambar 3.3.

Universitas Sumatera Utara

22

Gambar 3.3 Activity Diagram proses Kompr esi Even-Rodeh Code

Activity diagram menggambarkan interaksi aktifitas antara pengguna sistem secara
detil dan berurut. Pada Gambar 3.3 kotak paling kiri merupakan aktifitas yang
dilakukan oleh pengguna, sedangkan kotak sebelah kanan adalah respon yang
diberikan sistem terhadap aktifitas yang dilakukan pengguna terhadap sistem.

c. Activity Diagram pada proses Kompresi Variable Length Binary Encoding
(VLBE)
Pada proses kompresi Variable Length Binary Encoding (VLBE), aktivitas-aktivitas
yang berlangsung dapat digambarkan pada activity diagram pada gambar 3.4.

Universitas Sumatera Utara

23

Gambar 3.4 Activity Diagram proses Kompr esi Variable Length Binary Encoding
Activity diagram menggambarkan interaksi aktifitas antara pengguna sistem secara
detil dan berurut. Paga Gambar 3.4 kotak paling kiri merupakan aktifitas yang
dilakukan oleh pengguna, sedangkan kotak sebelah kanan adalah respon yang
diberikan sistem terhadap aktifitas yang dilakukan pengguna terhadap sistem.
d. Sequence Diagram
Sequence diagram adalah suatu diagram yang menggambarkan interaksi antar objek
pada sistem dalam sebuah urutan waktu atau rangkaian waktu. Sequence Diagram
untuk sistem dapat dilihat pada Gambar 3.5 dan Gambar 3.6.

Universitas Sumatera Utara

24

Gambar 3.5 Sequence Diagram Pr oses Kompr esi Even-Rodeh Code

Gambar 3.6 Sequence Diagram Pr oses Kompresi Variable Length Binary
Encoding (VLBE)
Pada Gambar 3.5 dan 3.6 dapat dilihat interaksi antara sistem dengan pengguna secara
berurutan. Aksi pengguna terhadap sistem digambarkan dengan tanda panah garis
penuh, sedangkan respon sistem terhadap pengguna digambarkan dengan tanda panah
garis putus-putus.

Universitas Sumatera Utara

25

3.1.4. Pseudocode
a. Pseudocode Algoritma Even-Rodeh Code
Baris
1.
2.

Kode
function GetEvenRodehCode (int n)
If n to 4 do

3.

c

4.

lc

5.

DecToBin (n)
c.length

for I to 3 – lc do

6.

sb

sb + “0”

7.

sb

sb
+c

8.

return sb

9.

if (n > 4 && n < 8)

10.

sb

sb + DecToBin (n)

11.

sb

sb + “0”

12.

return sb

13.

nbin

14.

k

15.

sb

sb + k

16.

sb

sb + nbin

17.

sb

sb + “n”

18.

return sb

ToBin
Dec
(n)
DecToBin (nbin.length)

b. Pseudocode Algor itma Variable Length Binary Encoding (VLBE)
Baris

Kode

1

function VLBE (String st)

2

charset

3.

t

4.

insertionSort (freq, charset)

5.

vlbe

6.

for n to t do

Get charset

charset.length
“0”

7.

v

8.

v.insert (0, “1”)

9.

vlbe [n]

e
vlb
[n-1]
v

10.

v

11.

v.replace (“0”,”1”)

12.

vlbe [t-1]

vlbe [t-2]
v

Universitas Sumatera Utara

26

3.1.5. Flowchart
a. Flowchart sistem secar a umum
Perancangan sistem secara umum digambarkan dengan flowchart seperti pada Gambar
3.7.
Mulai

Masukkan file
(*.rtf)

Pengkodean dengan
Even-Rodeh || VLBE

Hitung Rc, Cr, Rd, dan
waktu

Keluaran file
(*.erc || *.vlbe)

Dekompresi

Hitung waktu

Selesai
Gambar 3.7 Flowchart Sistem Secara Umum

Universitas Sumatera Utara

27

b. Flowhart Algor itma Even-Rodeh Code
Flowchart algoritma Even-Rodeh Code digambarkan pada Gambar 3.8.

Mulai

Masukkan nilai

tidak

tidak

Jika n >=4
&& n < 8

nbin = biner
(n)

Jika
n=1; n++

Keluaran Kode
VLBE

Selesai
Gambar 3.9 Flowchart algor itma Variable Length Binary Encoding (VLBE)

3.2

Per ancangan Interface

Pada perancangan sistem terdapat pembuatan Graphic User Interface (GUI) yang
akan mempermudah user dalam menggunakan sistem yang ada. Pada sistem, terdapat
5 buah Form yang akan ditampilkan antara lain Form Beranda, Form Kompresi, Form
Dekompresi, Form Bantuan dan Form Tentang.

Universitas Sumatera Utara

29

a. Form Ber anda
Pada halaman Beranda terdapat keterangan mengenai sistem yaitu judul dari skripsi
yang dibuat, logo dan juga nama. Form Beranda pada aplikasi dapat dilihat pada
Gambar 3.10

Gambar 3.10 Form Ber anda pada Sistem
Keterangan :
1. Tab Beranda
Berguna untuk menampilkan tampilan Beranda dari sistem yang ada.
2. Tab Kompresi
Berguna untuk menampilkan menu Kompresi pada sistem
3. Tab Dekompresi
Berguna untuk menampilkan menu Dekompresi pada sistem
4. Tab Bantuan
Berguna untuk menampilkan menu Bantuan yang ada pada sistem
5. Tab Tentang
Berguna untuk menampilkan menu Tentang mengenai sistem yang
dibangun
6. Label Text
Berisi keterangan mengenai sistem
7. Picture Box
Berisi gambar logo berformat .png sebagai keterangan dari sistem

Universitas Sumatera Utara

30

b. Form Kompresi
Pada halaman Kompresi terdapat beberapa button dan juga text box yang akan
digunakan dalam melakukan kompresi. Form Kompresi pada aplikasi dapat dilihat
pada Gambar 3.11.

Gambar 3.11 Form Kompr esi pada Sistem

Keterangan:
1. Tab Beranda
Berguna untuk menampilkan tampilan Beranda dari sistem yang ada.
2. Tab Kompresi
Berguna untuk menampilkan menu Kompresi pada sistem
3. Tab Dekompresi
Berguna untuk menampilkan menu Dekompresi pada sistem
4. Tab Bantuan
Berguna untuk menampilkan menu Bantuan yang ada pada sistem
5. Tab Tentang
Berguna untuk menampilkan menu Tentang mengenai sistem yang
dibangun
6. Text Box
Berguna untuk menampilkan pesan yang terdapat pada file *.rtf
7. Button Buka
Berguna untuk membuka file yang akan digunakan untuk kompresi

Universitas Sumatera Utara

31

8. Button Kompresi
Berguna untuk mengeksekusi data yang ada sehingga terkompresi
9. Button Atur Ulang
Berguna untuk menghapus data yang telah diambil dan menjadikannya
default
10.Text Box
Berisi informasi tempat pengambilan dan penyimpanan dari data yang
digunakan
11.Group Box
Berguna untuk mengelompokkan button dan text box dalam sistem
12.Radio Button
Berguna sebagai inputan dalam memilih metode yang akan digunakan.

c. Form Dekompr esi
Pada Form Dekompresi terdapat button yang berguna dalam mengeksekusi dari file
yang telah dikompresi. Form Dekompresi pada aplikasi dapat dilihat pada Gambar
3.12.

Gambar 3.12 Form Dekompresi pada Sistem

Keterangan :
1. Tab Beranda
Berguna untuk menampilkan tampilan Beranda dari sistem yang ada.

Universitas Sumatera Utara

32

2. Tab Kompresi
Berguna untuk menampilkan menu Kompresi pada sistem
3. Tab Dekompresi
Berguna untuk menampilkan menu Dekompresi pada sistem
4. Tab Bantuan
Berguna untuk menampilkan menu Bantuan yang ada pada sistem
5. Tab Tentang
Berguna untuk menampilkan menu Tentang mengenai sistem yang
dibangun
6. Button Buka
Berguna untuk membuka file yang akan digunakan untuk dekompresi
7. Button Dekompresi
Berguna untuk melakukan dekompresi terhadap data yang ada
8. Button Atur Ulang
Berguna untuk menghapus data yang telah diambil dan menjadikannya
default
9. Text Box
Berisi informasi tempat pengambilan dan penyimpanan dari data yang
digunakan
10.Group Box
Berguna untuk mengelompokkan button dan text box dalam sistem
11. Button Simpan
Berguna untuk menyimpan file teks.

d. Form Bantuan
Berisi keterangan yang dapat membantu user dalam mengoperasikan sistem yang ada.
Form Bantuan pada aplikasi dapat dilihat pada Gambar 3.13.

Universitas Sumatera Utara

33

Gambar 3.13 Form Bantuan pada Sistem

Keterangan :
1. Tab Beranda
Berguna untuk menampilkan tampilan Beranda dari sistem yang ada.
2. Tab Kompresi
Berguna untuk menampilkan menu Kompresi pada sistem
3. Tab Dekompresi
Berguna untuk menampilkan menu Dekompresi pada sistem
4. Tab Bantuan
Berguna untuk menampilkan menu Bantuan yang ada pada sistem
5. Tab Tentang
Berguna untuk menampilkan menu Tentang mengenai sistem yang
dibangun
6. Text Box
Berisi informasi mengenai pertolongan dalam menjalankan sistem

Universitas Sumatera Utara

34

e. Form Tentang
Berisi informasi mengenai informasi pembuatan di dalam sistem yang dibangun. Form
Tentang pada aplikasi dapat dilihat pada Gambar 3.14.

Gambar 3.14 Form Tentang Pada Sistem
Keterangan:
1. Tab Beranda
Berguna untuk menampilkan tampilan Beranda dari sistem yang ada
2. Tab Kompresi
Berguna untuk menampilkan menu Kompresi pada sistem
3. Tab Dekompresi
Berguna untuk menampilkan menu Dekompresi pada sistem
4. Tab Bantuan
Berguna untuk menampilkan menu Bantuan yang ada pada sistem
5. Tab Tentang
Berguna untuk menampilkan menu Tentang mengenai sistem yang
dibangun
6. Label Text
Berisi keterangan mengenai sistem
7. Group Box
Berguna untuk mengelompokkan text box dalam sistem

Universitas Sumatera Utara

BAB 4
IMPLEMENTASI DAN PENGUJ IAN SISTEM

4.1. Implementasi Algor itma
4.1.1. Implementasi Algoritma Even-Rodeh Code
a. Proses kompresi file teks dengan metode Even-Rodeh Code
Berikut ini adalah contoh proses kompresi file teks dengan metode Even-Rodeh Code.
Terdapat file teks yang berisikan string “KURA-KURA KAKAKKU LARI KAYAK
KUDA”. Penjelasan string yang belum dikompresi terdapat pada tabel 4.1.
Tabel 4.1 Penjelasan string yang belum dikompr esi
Karakter

K

U

Penjelasan
String K diubah dalam bilangan ASCII maka ASCII Code (Decimal)
maka K bernilai 75. Dengan ASCII Code (Binary) yaitu 01001011
sebanyak 8 bit. Frekuensi string K dalam “KURA-KURA KAKAKKU
LARI KAYAK KUDA” sebanyak 9. Setelah itu Bit dikalikan Frekuensi.
8 x 9 = 72. Jadi keseluruhan bit untuk string K adalah 72 bit.
String U diubah dalam bilangan ASCII maka ASCII Code (Decimal)
maka U bernilai 85. Dengan ASCII Code (Binary) yaitu 01010101
sebanyak 8 bit. Frekuensi string U dalam “KURA-KURA KAKAKKU
LARI KAYAK KUDA” sebanyak 4. Setelah itu Bit dikalikan Frekuensi.
8 x 4 = 32. Jadi keseluruhan bit untuk string U adalah 32 bit.

R

String R diubah dalam bilangan ASCII maka ASCII Code (Decimal)
maka R bernilai 82. Dengan ASCII Code (Binary) yaitu 01010010
sebanyak 8 bit. Frekuensi string R dalam “KURA-KURA KAKAKKU
LARI KAYAK KUDA” sebanyak 3. Setelah itu Bit dikalikan Frekuensi.
8 x 3 = 24. Jadi keseluruhan bit untuk string U adalah 24 bit.

A

String A diubah dalam bilangan ASCII maka ASCII Code (Decimal)
maka A bernilai 82. Dengan ASCII Code (Binary) yaitu 01010010
sebanyak 8 bit. Frekuensi string U dalam “KURA-KURA KAKAKKU
LARI KAYAK KUDA” sebanyak 3. Setelah itu Bit dikalikan Frekuensi.
8 x 3 = 24. Jadi keseluruhan bit untuk string U adalah 24 bit.

Universitas Sumatera Utara

36

-

String - diubah dalam bilangan ASCII maka ASCII Code (Decimal)
maka - bernilai 45. Dengan ASCII Code (Binary) yaitu 00101101
sebanyak 8 bit. Frekuensi string - dalam “KURA-KURA KAKAKKU
LARI KAYAK KUDA” sebanyak 1. Setelah itu Bit dikalikan Frekuensi.
8 x 1 = 1. Jadi keseluruhan bit untuk string U adalah 8 bit.

Spasi

String Spasi diubah dalam bilangan ASCII maka ASCII Code (Decimal)
maka Spasi bernilai 32. Dengan ASCII Code (Binary) yaitu 00100000
sebanyak 8 bit. Frekuensi string Spasi dalam “KURA-KURA
KAKAKKU LARI KAYAK KUDA” sebanyak 4. Setelah itu Bit
dikalikan Frekuensi. 8 x 4 = 32. Jadi keseluruhan bit untuk string Spasi
adalah 31 bit.

L

String L diubah dalam bilangan ASCII maka ASCII Code (Decimal)
maka L bernilai 76. Dengan ASCII Code (Binary) yaitu 01000101
sebanyak 8 bit. Frekuensi string L dalam “KURA-KURA KAKAKKU
LARI KAYAK KUDA” sebanyak 1. Setelah itu Bit dikalikan Frekuensi.
8 x 1 = 1. Jadi keseluruhan bit untuk string L adalah 8 bit.

I

String I di convert ke ASCII Code (Decimal) maka I bernilai 76. Dengan
ASCII Code (Binary) yaitu 01000101 sebanyak 8 bit. Frekuensi string I
dalam “KURA-KURA KAKAKKU LARI KAYAK KUDA” sebanyak
1. Setelah itu Bit dikalikan Frekuensi. 8 x 1 = 1. Jadi keseluruhan bit
untuk string I adalah 8 bit.

Y

String Y diubah dalam bilangan ASCII maka ASCII Code (Decimal)
maka Y bernilai 76. Dengan ASCII Code (Binary) yaitu 01000101
sebanyak 8 bit. Frekuensi string Y dalam “KURA-KURA KAKAKKU
LARI KAYAK KUDA” sebanyak 1. Setelah itu Bit dikalikan Frekuensi.
8 x 1 = 1. Jadi keseluruhan bit untuk string Y adalah 8 bit.

D

String D diubah dalam bilangan ASCII maka ASCII Code (Decimal)
maka D bernilai 76. Dengan ASCII Code (Binary) yaitu 01000101
sebanyak 8 bit. Frekuensi string D dalam “KURA-KURA KAKAKKU
LARI KAYAK KUDA” sebanyak 1. Setelah itu Bit dikalikan Frekuensi.
8 x 1 = 1. Jadi keseluruhan bit untuk string D adalah 8 bit.

Untuk mengukur ukuran String itu di dalam komputer dapat dilihat pada Tabel 4.2.

Universitas Sumatera Utara

37

Tabel 4.2 String yang belum dikompr esi
Karakter

ASCII Code

ASCII Code (Binary)

Bit

Frekuensi Bit x Frekuensi

K

75

01001011

8

9

72

U

85

01010101

8

4

32

R

82

01010010

8

3

24

A

65

01000001

8

8

64

-

45

00101101

8

1

8

Spasi

32

00100000

8

4

32

L

76

01000101

8

1

8

I

69

01000101

8

1

8

Y

89

01011001

8

1

8

D

68

01000100

8

1

8

Total Bit

Dari

Tabel

3.2

dapat

dibentuk

264

String

bit

sebelum

dikompresi

yaitu

“01001011010101010101001001000001001011010100101101010101010100100100
000100100000010010110100000101001011010000010100101101001011010101010
010000001000101010000010101001001000101001000000100101101000001010110
0101000001010010110010000001001011010101010100010001000001”.
Dengan uraian sebagai berikut:
01001011 01010101 01010010 01000001 00101101 01001011 01010101 01010010
K
U
R
A
K
U
R
01000001 00100000 01001011 01000001 01001011 01000001 01001011 01001011
A
Spasi
K
A
K
A
K
K
01010101 00100000 01000101 01000001 01010010 01000101 00100000 01001011
U
Spasi
L
A
R
I
Spasi
K
01000001 01011001 01000001 01001011 00100000 01001011 01010101 010001000
A
Y
A
K
Spasi
K
U
D
01000001
A

Universitas Sumatera Utara

38

Berdasarkan kode ASCII, satu karakter bernilai delapan bit bilangan biner. Sehingga
34 karakter pada String mempunyai nilai biner sebanyak 264 bit. Sebelum melakukan
proses kompresi, karakter tersebut diurutkan terlebih dahulu berdasarkan dari karakter
yang memiliki frekuensi terbesar ke terkecil. Cara pengkodean algoritma Even-Rodeh
Code pada tabel 4.3.
Tabel 4.3 Cara pengkodean algoritma Even-Rodeh Code
Karakter

K

A

U

Spasi

R

-

L

Even-Rodeh
Code

Penjelasan
K=0
Biner = 0
Karena panjang bit kurang dari 3 maka ditambanhkan
0 didepan nilai biner sebanyak 3 digit
00 + 0 = 000
A=1
Biner 1 = 1
Karena panjang bit kurang dari 3 maka ditambanhkan
0 didepan nilai biner sebanyak 3 digit
00 + 1 = 001
U=2
Biner 2 = 10
Karena panjang bit kurang dari 3 maka ditambanhkan
0 didepan nilai biner sebanyak 3 digit
0 + 10 = 010
U=3
Biner 1 = 11
Karena panjang bit kurang dari 3 maka ditambanhkan
0 didepan nilai biner sebanyak 3 digit
0 + 11 = 011
R=4
Biner 4 = 100
Karena panjang sama dengan 4, maka ditambahkan 0
dibelakang nilai biner
100 + 0 = 100 0
-=5
Biner 5 = 101
Karena panjang bit kurang dari 7, maka ditambahkan 0
dibelakang nilai biner
101 + 0 = 101 0
L=6
Biner 6 = 100
Karena panjang bit kurang dari 7, maka ditambahkan 0
dibelakang nilai biner

000

001

010

011

100 0

101 0

110 0

Universitas Sumatera Utara

39

110 + 0 = 110 0

I

I=7
Biner 7 = 111
Karena panjang bit kurang dari 7, maka ditambahkan 0
dibelakang nilai biner
111 + 0 = 111 0

111 0

Y

Y=8
Biner 8 = 1000
Karena panjang bit sama dengan 8 maka ditambahkan
0 dibelakang nilai biner
1000 + 0 = 1000 0
Kemudian angka ditambahkan didepan nilai biner
sebanyak jumlah digit nilai biner
Jumlah digit nilai biner 1000 = 4
Biner 4 = 100
Maka hasil akhir
100 + 1000 0 = 100 1000 0

100 1000 0

D

Biner 9 = 1001
Karena panjang bit lebih dari 8 maka ditambahkan 0
dibelakang nilai biner
1001 + 0 = 1001 0
Kemudian angka ditambahkan didepan nilai biner
sebanyak jumlah digit nilai biner
Jumlah digit nilai biner 1001 = 4
Biner 4 = 100
Maka hasil akhir
100 + 1001 0 = 100 1001 0

100 1001 0

Proses kompresi untuk Even-Rodeh Code dapat dilihat pada Tabel 4.4.
Tabel 4.4 String yang sudah dikompresi dengan Even-Rodeh Code
Karakter

Even-Rodeh Code

Bit

Frekuensi

Bit x Frekuensi

K

000

3

9

27

A

001

3

8

24

U

010

3

4

12

Spasi

011

3

4

12

R

100 0

4

3

12

Universitas Sumatera Utara

40

-

101 0

4

1

4

L

110 0

4

1

4

I

111 0

4

1

4

Y

100 1000 0

8

1

8

D

100 1001 0

8

1

8

Total Bit

115

Dari Tabel 4.4 dapat dibentuk string bit dari string sebelum dikompresi yaitu “KURAKURA
KAKAKKU
LARI
KAYAK
KUDA”
menjadi
string
bit
“00001010000011010000010100000100100000100000100000001000111000011110
11100010000011001000000100000100001010010010001”.
Dengan uraian sebagai berikut:
000 010 1000 001 1010 000 010 1000 001 011 000 001 000 001 000 000 010 011
K U R A - K U
R A Spasi K A K A K K U Spasi
1100 001 1000 1110 011 000 001 10010000 001 000 011 000 010
L A R
I Spasi K
A
Y
A K Spasi K U
10010010 001
D
A
Sebelum ditulis ke sebuah file hasil kompresi dilakukan penambahan bit-bit
padding dan flag bits diawal dan akhir string bit. Bit-bit itu dihasilkan dari panjang
string bit itu sendiri apakah habis dibagi delapan dan berapa sisanya jika dibagi
delapan. Karena jumlah string bit 115 tidak habis dibagi delapan dan sisanya adalah
tiga. Maka dapat dibuat padding “00000” dan flagnya adalah “00000101” menjadi
“00001010000011010000010100000101100000100000100000001001111000011000
111001100000110010000001000011000010100100100010000000000101”. Sehingga
total bit seluruhnya setelah penambahan padding dan flag bits adalah 128 bit.
Dengan uraian hasil kompresi sebagai berikut:
00001010 00001101 00000101 00000101 10000010 00001000 00001001 11100001
LF
CR
ENQ
ENQ
BPH
BS
tab
á
10001110 01100000 11001000 00010000 11000010 10010010 00100000 000000101
SS2

`

È

DLE

Â

PU2

Space

ENQ

Hasil kompresi yaitu:

Universitas Sumatera Utara

41

ENQ ENQ BPH BS

á SS2` È DLE Â PU2 ENQ

Dari hasil kompresi dengan Even-Rodeh Code di atas dapat dihitung kinerja
kompresinya yaitu:
a. Ratio of Compression (Rc)

b. Compression Ratio (Cr)

c. Redundancy (Rd)

b.

Proses dekompresi file teks dengan metode Even-Rodeh Code

Setelah file teks dikompresi maka akan menghasilkan file baru yang berisi informasi
berupa tabel karakter dan tabel kode Even-Rodeh Code yang digunakan serta string bit
hasil proses kompresi. Proses dekompresi dilakukan dengan cara membaca string bit
dari indeks 1 sampai ke indeks dari panjang string bit tersebut. Setiap satu indeks
pembacaan string bit dicek pada tabel kode Even-Rodeh apakah cocok atau sama, jika

Universitas Sumatera Utara

42

cocok maka ditulislah karakter pada tabel karakter dengan indeks yang sama pada
tabel kode Even-Rodeh tersebut. Berikut ini adalah contoh proses dekompresi dari file
hasil kompresi pada Tabel 4.4.
Pada Tabel 4.4 didapatkan string bit hasil kompresi dengan kode Even-Rodeh yaitu:
“00001010000011010000010100000101100000100000100000001001111000011000
111001100000110010000001000011000010100100100010000000000101”. Sebelum
dilakukan pembacaan string, awalnya tentukan dahulu berapa panjang string bit yang
harus dibaca. Pada delapan bit terakhir di dalam bit string terdapat flag bits yang
memberikan sebuah tanda banyaknya padding yang diberikan pada String bit pada
saat proses kompresi. Delapan bit itu adalah “00000101” atau sama dengan 5 pada
bilangan desimal. Maka dapat ditentukan indeks terakhir untuk proses pembacaan
string adalah total panjang string bit seluruhnya dikurang dengan flag ditambah 5 atau
dapat ditulis n = panjang String bit – (flag+5).
Setelah nilai n ditentukan maka dilakukan pembacaan string bit dari indeks ke-1
sampai indeks ke-n. Indeks ke-1=”0” tidak ada pada tabel maka ditambahkan dengan
indeks ke-2=”0” menjadi “00” juga tidak ada pada tabel ditambahkan lagi dengan
indeks berikutnya sampai di indeks ke-3=”0” menjadi “000” adalah karakter “K” dan
begitu seterusnya sampai indeks ke-n sehingga dihasilkan string semula yaitu
“KURA-KURA KAKAKKU LARI KAYAK KUDA”.
Dengan uraian sebagai berikut:
000 010 1000 001 1010 000 010 1000 001 011 000 001 000 001 000 000 010 011
K U R A - K U
R A Spasi K A K A K K U Spasi
1100 001 1000 1110 011 000 001 10010000 001 000 011 000 010
L A R
I Spasi K A
Y
A K Spasi K U
10010010 001
D
A
4.1.2. Per hitungan Algor itma Variable Length Binary Encoding (VLBE)
a. Proses kompresi file teks dengan metode Variable Length Binary Encoding
(VLBE)
Cara pengkodean algoritma Variable Length Binary Encoding (VLBE) pada tabel 4.5.

Universitas Sumatera Utara

43

Tabel 4.5 Car a pengkodean algor itma Variable Length Binary Encoding
(VLBE).
Variable Length

Karakter

Penjelasan

K

Karena nilai awal biner dimulai dari 0 sebagai root
Nilai n sebelumnya sama dengan 0
Maka ditambahkan angka 1
Sehingga 1 + 0 = 10
Nilai n sebelumnya sama dengan 10
Maka ditambahkan angka 1
Sehingga 1 + 10 = 110
Nilai n sebelumnya sama dengan 110
Maka ditambahkan angka 1
Sehingga 1 + 110 = 1110

A

U

Spasi

Binary Encoding
0
10

110

1110

R

Nilai n sebelumnya sama dengan 1110
Maka dita mbahkan angka 1
Sehingga 1 + 1110 = 11110

11110

-

Nilai n sebelumnya sama dengan 11110
Maka ditambahkan angka 1
Sehingga 1 + 11110 = 111110

111110

L

Nilai n sebelumnya sama dengan 11110
Maka ditambahkan angka 1
Sehingga 1 + 11110 = 111110

1111110

I

Nilai n sebelumnya sama dengan 111110
Maka ditambahkan angka 1
Sehingga 1 + 111110 = 1111110

11111110

Y

Nilai n sebelumnya sama dengan 1111110
Maka ditambahkan angka 1
Sehingga 1 + 1111110 = 11111110

111111110

D

Nilai awal biner diubah menajdi angka 11111110
Karean nilai awal biner sama dengan 11111110
maka, angka 0 diubah menjadi 1
Sehingga hasil akhir 11111111

11111111

Kompresi untuk kode Variable Length Binary Encoding dapat dilihat pada Tabel 4.6.

Universitas Sumatera Utara

44

Tabel 4.6 String yang sudah dikompr esi dengan Variable Length Binary Encoding
Karakter Variable Length Binary Encoding

Bit

Frekuensi

Bit x Frekuensi

K

0

1

9

9

A

10

2

8

16

U

110

3

4

12

Spasi

1110

4

4

16

R

11110

5

3

15

-

111110

6

1

6

L

1111110

7

1

7

I

11111110

8

1

8

Y

111111110

9

1

9

D

111111111

9

1

9

Total Bit

107

Dari Tabel 4.6 dapat dibentuk string bit dari string sebelum dikompresi yaitu “KURAKURA KAKAKKU LARI KAYAK KUDA” menjadi string bit “01101111010
111110011011110101110010010001101110111111010111101111111011100101111
111101001110011011111111110”.
Dengan uraian sebagai berikut:
0 110 11110 10 111110 0 110 11110 10 1110 0 10 0 10 0 0 110 1110 1111110
K U R A
K U R A Spasi K A K A K K U Spasi
L
10 11110 11111110 1110 0 10 111111110 10 0
A
R
I
Spasi K A
Y
A K

1110 0 110 111111111 10
Spasi K U
D
A

Sebelum ditulis ke sebuah file hasil kompresi dilakukan penambahan bit-bit
padding dan flag diakhir string bit. Bit-bit itu dihasilkan dari panjang string bit itu
sendiri apakah habis dibagi delapan dan berapa sisanya jika dibagi delapan. Karena
jumlah string bit 108 tidak habis dibagi delapan dan sisanya adalah empat. Maka dapat
dibuat

padding

“0000”

dan

flag

bitsnya

adalah

“00000100”

menjadi

“01101111010111110011011110101110010010001101110111111010111101111111
011100101111111101001110011011111111110000000000100”. Sehingga total bit
seluruhnya setelah penambahan padding dan flag adalah 120 bit.

Universitas Sumatera Utara

45

Dengan uraian hasil kompresi sebagai berikut:
01101111 01011111 00110111 10101110 00100100 11011101 11111010 11110111
o
_
7
®
H
Ý
ú
÷
11110111 00101111 11110100 11100110 11111111 11000000 00000100
÷
/
ô
æ
ÿ
À
ENQ
Hasil kompresi yaitu: o_7®HÝú÷÷/ôæÿÀENQ
Dari hasil kompresi dengan Variable Length Binary Encoding (VLBE) di atas dapat
dihitung kinerja kompresinya yaitu:
a. Ratio of Compression (Rc)

b. Compression Ratio (Cr)

c. Redundancy (Rd)

Dari hasil perhitungan antara kedua metode, dapat disimpulkan bahwa metode EvenRodeh Codeh lebih baik dibandingkan metode Variable Length Binary Encoding
(VLBE). Dilihat dari hasil Ratio of Compession dari metode Even-Rodeh Code lebih
kecil dibandingkan metode Variable Length Binary Encoding (VLBE). Hasil dari
Compression Ratio dari metode Even-Rodeh Code lebih besar dibandingkan metode

Universitas Sumatera Utara

46

Variable Length Binary Encoding (VLBE). Dan hasil dari Redundancy dari metode
Even-Rodeh Code lebih kecil dibandingkan metode Variable Length Binary Encoding
(VLBE)

b. Proses dekompresi file teks dengan metode Variable Length Binary Encoding
(VLBE)
Setelah file teks dikompresi maka akan menghasilkan file baru yang berisi informasi
berupa tabel karakter dan tabel kode Variable Length Binary Encoding (VLBE) yang
digunakan serta string bit hasil proses kompresi. Proses dekompresi dilakukan dengan
cara membaca string bit dari indeks 1 sampai ke indeks dari panjang string bit
tersebut. Setiap satu indeks pembacaan string bit dicek pada tabel kode Variable
Length Binary Encoding (VLBE) apakah cocok atau sama, jika cocok maka ditulislah
karakter pada tabel karakter dengan indeks yang sama pada tabel kode Variable
Length Binary Encoding (VLBE) tersebut. Berikut ini adalah contoh proses
dekompresi dari file hasil kompresi pada Tabel 4.6.
Pada Tabel 4.6 dapatkan string bit hasil kompresi dengan kode Variable Length
Binary Encoding (VLBE) yaitu:
“01101111010111110011011110101110010010001101110111111010111101111111
011100101111111101001110011011111111110000000000100”. Sebelum dilakukan
pembacaan string, awalnya tentukan dahulu berapa panjang string bit yang harus
dibaca. Pada delapan bit terakhir di dalam bit string terdapat flag yang memberikan
sebuah tanda banyaknya padding yang diberikan pada String bit pada saat proses
kompresi. Delapan bit itu adalah “00000100” atau sama dengan 4 pada bilangan
desimal. Maka dapat ditentukan indeks terakhir untuk proses pembacaan string adalah
total panjang string bit seluruhnya dikurang dengan flag ditambah 4 atau dapat ditulis
n = panjang String bit – (flag+4).
Setelah nilai n ditentukan maka dilakukan pembacaan String bit dari indeks ke-1
sampai indeks ke-n. Indeks ke-1 = ”0” adalah karakter “K”. Indeks ke-2 = 1 tidak ada
pada tabel maka ditambahkan dengan indeks ke-3 menjadi “10” karakter “U” maka
ditambahkan karakter U ke dalam string yang telah dibuat tadi sehingga menjadi
“KU” dan begitu seterusnya sampai indeks ke-n sehingga dihasilkan string semula
yaitu “KURA-KURA KAKAKKU LARI KAYAK KUDA”.

Universitas Sumatera Utara

47

Dengan uraian sebagai berikut:
0 110 11110 10 111110 0 110 11110 10 1110 0 10 0 10 0 0 110 1110 1111110
K U R A
- K U
R A Spasi K A K A K K U Spasi
L
10 11110 11111110 1110 0 10 111111110 10 0 1110 0 110 111111111 10
A
R
I
Spasi K A
Y
A K Spasi K U
D
A

4.2. Implementasi Sistem
Sistem ini dibangun dengan menggunakan bahasa pemrograman C# dan menggunakan
Sharp Develop 4.3. Pada proses implementasi yang dirancang pada pada sistem ini
dibagi menajdi 5 form dalam bahasa C#, diantaranya form Beranda, form Kompresi,
form Dekompresi, form Bantuan, dan form Tentang.
4.2.1. Form Beranda
Form Beranda merupakan form yang pertama kali muncul pada saat aplikasi
dijalankan. Form ini terdiri dari lima Tab Menu, yaitu Tab Beranda, Tab Kompresi,
Tab Dekompresi, Tab Bantuan, dan Tab Tentang. Halaman utama pada aplikasi dapat
dilihat pada Gambar 4.1.

Gambar 4.1 Form Beranda
4.2.2. Form Kompresi
Form Kompresi merupakan form yang digunakan untuk melakukan proses kompresi.
Pada tab ini disediakan interface untuk input file teks, textbox untuk menampilkan isi

Universitas Sumatera Utara

48

file teks, menentukan direktori output file hasil kompresi, memilih algoritma untuk
proses kompresi dan group box yang berisi beberapa text box informasi hasil
kompresi. Tampilan untuk tab Kompresi dapat dilihat pada Gambar 4.2.

Gambar 4.2 Form Kompresi

4.2.3. Form Dekompresi
Form Dekompresi merupakan form yang digunakan untuk melakukan proses
dekompresi. Pada form ini disediakan interface untuk input file hasil dekompresi yaitu
untuk file *.rtf, menentukan direktori file hasil dekompresi, text box untuk
menampilkan waktu yang diperlukan untuk dekompresi, dan text area untuk
menampilkan isi file hasil dekompresi. Tampilan untuk Tab Dekompresi dapat dilihat
pada Gambar 4.3.

Universitas Sumatera Utara

49

Gambar 4.3 Form Dekompr esi
4.2.4. Form Bantuan
Form Bantuan merupakan Form yang digunakan untuk menampilkan informasi
tentang cara mengoperasikan sistem atau aplikasi yang dibuat. Tampilan untuk tab
Bantuan dapat dilihat pada Gambar 4.4.s

Gambar 4.4 Form Bantuan
4.2.5. Form Tentang

Universitas Sumatera Utara

50

Form Tentang merupakan form yang digunakan hanya untuk menampilkan informasi
tentang sistem atau aplikasi yang dibuat dan informasi tentang penulis. Tampilan
untuk tab Tentang dapat dilihat pada Gambar 4.5.

Gambar 4.5 Form Tentang

4.3. Pengujian Sistem
Pengujian sistem merupakan tahap mengidentifikasi hasil dari implementasi sistem
apakah sistem telah berjalan sesuai dengan fungsi-fungsi yang sebelumnya ditentukan
pada tahap analisis dan perancangan sistem.Pengujian sistem ini dilakukan pada File
teks yang berekstensi *.rtf. Pengujian sistem yang dilakukan pada penelitian ini dibagi
dalam 2 proses utama yaitu pengujian proses kompresi dan pengujian proses
dekompresi.
4.3.1. Pengujian proses kompresi
Untuk melakukan proses kompresi tahap awal yang dilakukan adalah memilih tab
Kompresi. Setelah tampilan form Kompresi muncul maka lakukan langkah-langkah
berikut ini untuk melakukan proses kompresi.
1. Menekan tombol pada Buka file untuk membuka Open File Dialog, dan pilih File
teks (*.rtf) sebagai Input File dapat dilihat pada gambar 4.6.

Universitas Sumatera Utara

51

Gambar 4.6 Open File Dialog untuk Input File Teks
2. Memilih algoritma Even-Rodeh Code atau Variable Length Binary Encoding yang
akan digunakan untuk proses kompresi pada radio button yang telah disediakan
dapat dilihat pada gambar 4.7.

Gambar 4.7 Radio Button untuk memilih algoritma
3. Menekan tombol Kompresi untuk membuka Save File Dialog dan tentukan
direktori untuk menyimpan file hasil kompresi (*.erc atau *.vlbe). Setelah Input
File dan Output File ditentukan maka akan ditampilkan informasi direktori File
seperti pada Gambar 4.8.

Universitas Sumatera Utara

52

Gambar 4.8 Aplikasi setelah File Input dan Output ditentukan

4. Setelah proses kompresi berhasil sistem akan menampilkan informasi hasil
kompresi pada text box-text box seperti pada Gambar 4.9.

Gambar 4.9 Informasi Hasil Kompr esi
Proses kompresi menghasilkan sebuah File Output yaitu file dengan ekstensi
*.erc (Even-Rodeh Code) atau *.vlbe (Variable Length Binary Encoding) sebagai file
yang menyimpan informasi karakter dan string bit hasil kompresi. File hasil kompresi
ini dapat dilihat menggunakan text editor seperti pada Gambar 4.10 dan 4.11

Universitas Sumatera Utara

53

Gambar 4.10 File Even-Rodeh Code Hasil Kompresi

Gambar 4.11 File Variable Length Binary Encoding Hasil Kompresi

4.3.2. Pengujian proses dekompresi
Untuk melakukan proses dompresi tahap awal yang dilakukan adalah memilih Tab
Dekompresi. Setelah tampilan Form Dekompresi muncul maka lakukan langkahlangkah berikut ini untuk melakukan proses dekompresi.
1. Menekan tombol pada Buka File untuk membuka Open File Dialog Open File,
dan pilih file hasil kompresi (*.erc atau *.vlbe) sebagai Input File dapat dilihat
pada gambar 4.12.

Universitas Sumatera Utara

54

Gambar 4.12 Open File Dialog untuk file VLBE
2. Menekan tombol Dekompresi untuk melakukan proses dekompresi. Setelah proses
dekompresi berhasil sistem akan menampilkan informasi hasil dekompresi dan
waktu dekompresi pada text box-text box seperti pada Gambar 4.13.

Gambar 4.13 Informasi Hasil Dekompresi

3. Menekan tombol pada Simpan File untuk membuka Save File Dialog dan tentukan
direktori untuk menyimpan file hasil dekompresi (*.rtf) dapat dilihat pada gambar
4.14.

Universitas Sumatera Utara

55

Gambar 4.14 Save File Dialog untuk hasil Dekompresi

4.4. Hasil Pengujian
Hasil pengujian yang didapatkan melalui penelitian ini berupa hasil dari proses
kompresi dan dekompresi string dengan dua jenis komposisi string yaitu string yang
terdiri dari karakter yang sama (String Homogen) dan string yang terdiri dari berbagai
macam karakter (String Heterogen).
Hasil pengujian String Homogen dengan metode Even-Rodeh Code dan
Variable Length Binary Encoding (VLBE) dapat dilihat pada Tabel 4.7 dan Tabel 4.8.
Tabel 4.7 Hasil Pengujian String Homogen dengan Even-Rodeh Code
String Homogen
No
1
2
3
4
5
6
7
8
9
10

Jumlah
String
5
10
50
100
500
1000
5000
10000
50000
100000

Jlh. Byte sblm
Kar kompresi
2
2
2
2
2
2
2
2
2
2

Even-Rodeh Code
Byte terkompresi

7
4
12
7
58
23
118
44
548
201
1098
401
5498
2001
10998
4001
54998
20001
1187998
432001
Rata-rata

Selisih
Byte

CR
(%)

RC

RD
(%)

3
5
35
74
347
697
3497
6997
34997
755997

66.67
54.55
40.74
38.53
37.79
37.65
37.53
37.52
37.5
37.5
42.598

1.5
1.83
2.45
2.6
2.65
2.66
2.66
2.67
2.67
2.67
2.436

33.33
45.45
59.26
61.47
62.21
62.35
62.47
62.48
62.5
62.5
57.402

Waktu
Waktu
Kompresi Dekomp.
(ms)
(ms)
0.008
0.004
0.004
0.003
0.008
0.001
0.008
0.003
0.008
0.008
0.015
0.014
0.019
0.021
0.027
0.056
0.106
0.143
1.108
2.732
0.1311
0.2985

Universitas Sumatera Utara

56

No
1
2
3
4
5
6
7
8
9
10

Tabel 4.8 Hasil Pengujian String Homogen dengan Variable Length Binary
Encoding (VLBE)
String Homogen
Variable Length Binary Encoding (VLBE)
Waktu
Waktu
Jlh. Byte sblm Byte terSelisih
CR
RD
RC
Kompresi Dekomp.
Jumlah
Kar kompresi kompresi
Byte
(%)
(%)
(ms)
(ms)
String
5
5
2
7
2
33.33
3
66.67 0.003
0.003
9
10
2
12
3
27.27 3.67
72.73
0.003
0.004
0
50
2
58
58
14.81 6.75
85.19 0.013
0.003
102
100
2
118
16
13.76 7.27
86.24
0.008
0.003
478
500
2
548
70
12.79 7.82
87.21
0.008
0.007
959
1000
2
1098
139
12.68 7.89
87.31
0.013
0.01
6809
5000
2
5498
689
12.54 7.89
87.46
0.007
0.009
9622
10000
2
10998
1376
12.52 7.99
87.48
0.023
0.023
48122
50000
2
54998
6876
12.5
8
87.5
0.043
0.072
100000
2
1187998
148501 1039497 12.5
8
87.5
0.817
1.396
Rata-rata
16.47 6.828 83.529
0.0938
0.153
Dari Tabel 4.7 dan Tabel 4.8 dapat dibuat grafik perbandingan hasil pengujian
String Homogen antara Even-Rodeh Code dan Variable Length Binary Encoding
(VLBE) berdasarkan variable Ratio of Compression (Rc), Compression Ratio (Cr),
Redundancy (Rd), waktu kompresi dan dekompresi seperti pada Gambar 4.15,
Gambar 4.16, Gambar 4.17, Gambar 4.18 dan Gambar 4.19.

Gambar 4.15 Grafik Ratio of Compression ter hadap String Homogen

Universitas Sumatera Utara

57

Dari grafik pada Gambar 4.15 dapat diambil kesimpulan bahwa Ratio of
Compression hasil kompresi String Homogen dengan Variable Length Binary
Encoding (VLBE) lebih baik dibandingkan dengan Even-Rodeh Code.

Gambar 4.16 Grafik Compression Ratio ter hadap String Homogen
Dari grafik pada Gambar 4.16 dapat diambil kesimpulan bahwa Compression
Ratio hasil kompresi String Homogen dengan Variable Length Binary Encoding
(VLBE) lebih baik dibandingkan dengan Even-Rodeh Code.

Universitas Sumatera Utara

58

Gambar 4.17 Grafik Redundancy ter hadap String Homogen
Dari grafik pada Gambar 4.17 dapat diambil kesimpulan bahwa Redundancy
hasil kompresi String Homogen dengan Variable Length Binary Encoding (VLBE)
lebih baik dibandingkan dengan Even-Rodeh Code.

Gambar 4.18 Grafik Waktu Kompr esi terhadap String Homogen

Universitas Sumatera Utara

59

Dari grafik pada Gambar 4.18 dapat diambil kesimpulan waktu yang
diperlukan untuk proses kompresi String Homogen dengan Even-Rodeh Code lebih
banyak dibandingkan dengan Variable Length Binary Encoding (VLBE).

Gambar 4.19 Grafik Waktu Dekompr esi ter hadap String Homogen
Dari grafik pada Gambar 4.19 dapat diambil kesimpulan waktu yang
diperlukan untuk proses dekompresi String Homogen dengan Even-Rodeh Code lebih
banyak dibandingkan dengan Variable Length Binary Encoding (VLBE).
Hasil pengujian String Heterogen dengan metode Even-Rodeh Code dan
Variable Length Binary Encoding (VLBE) dapat dilihat pada Tabel 4.9 dan Tabel
4.10.

Universitas Sumatera Utara

60

Tabel 4.9 Hasil Pengujian String Heter ogen dengan Even-Rodeh Code
String Heterogen
No
1
2
3
4
5
6
7
8
9
10

Jumlah
String
5
10
50
100
500
1000
5000
10000
50000
100000

Jlh.
kar
5
11
11
11
11
11
11
11
11
11

Byte sblm
kompresi
5
10
58
118
598
1198
5998
11998
59998
119998
Rata-rata

Even-Rodeh Code
Byte terkompresi

Selisih
Byte

CR
(%)

RC

RD
(%)

3
9
49
99
499
999
4999
9999
49999
99999

2
1
9
19
99
199
999
1999
9999
19999

60
70
61.11
59.63
59.2
59.14
59.1
59.10
59.09
59.09
60.546

1.67
1.43
1.64
1.68
1.69
1.69
1.69
1.69
1.69
1.69
1.656

40
30
38.89
40.37
40.8
40.86
40.9
40.90
40.91
40.91
39.454

Waktu
Kompresi
(ms)
0.007
0.004
0.013
0.004
0.014
0.015
0.021
0.022
0.138
0.182
0.042

Waktu
Dekomp.
(ms)
0.003
0.003
0.003
0.002
0.016
0.022
0.070
0.094
0.329
0.645
0.1187

Tabel 4.10 Hasil Pengujian String Heter ogen dengan Variable Length
Binary Encoding (VLBE)
Variable Length Binary Encoding (VLBE)

String Heterogen
No
1
2
3
4
5
6
7
8
9
10

Jumlah
String
5
10
50
100
500
1000
5000
10000
50000
100000

Jlh. Byte sblm Byte terKar kompresi kompresi

Selisih
Byte

5
11
11
11
11
11
11
11
11
11

1
-14
-17
-32
-152
-303
-1503
-3001
-15001
-30001

5
4
10
14
58
75
118
150
598
750
1198
1501
5998
7501
11998
14999
59998
74999
119998
149999
Rata-rata

CR
(%)

RC

60
1.67
80
1.25
75.93 1.32
74.31 1.35
73.95 1.35
73.98 1.35
73.89 1.35
73.87 1.35
73.86 1.35
73.86 1.35
73.365 1.369

RD
(%)
40
20
24.07
25.69
26.05
26.01
26.11
26.13
26.14
26.14
26.634

Waktu
Kompresi
(ms)
0.007
0.007
0.007
0.013
0.006
0.015
0.013
0.033
0.102
0.182
0.0385

Waktu
Dekomp.
(ms)
0.003
0.003
0.003
0.004
0.009
0.026
0.057
0.092
0.420
0.865
0.1482

Dari Tabel 4.9 dan Tabel 4.10 dapat dibuat grafik perbandingan hasil
pengujian String Heterogen antara Even-Rodeh Code dan Variable Length Binary
Encoding (VLBE) berdasarkan variable Ratio of Compression (Rc), Compression
Ratio (Cr), Redundancy (Rd), waktu kompresi dan dekompresi seperti pada Gambar
4.20, Gambar 4.21, Gambar 4.22, Gambar 4.23 dan Gambar 4.24.

Universitas Sumatera Utara

61

Gambar 4.20 Grafik Ratio of Compression ter hadap String Heter ogen

Dari grafik pada Gambar 4.20 dapat diambil kesimpulan bahwa Ratio of
Compression hasil kompresi String Heterogen dengan Even-Rodeh Code lebih baik
dibandingkan dengan Variable Length Binary Encoding (VLBE).

Gambar 4.21 Grafik Compression Ratio ter hadap String Heter ogen

Universitas Sumatera Utara

62

Dari grafik pada Gambar 4.21 dapat diambil kesimpulan bahwa Compression
Ratio hasil kompresi String Heterogen dengan Even-Rodeh Code lebih baik
dibandingkan dengan Variable Length Binary Encoding (VLBE).

Gambar 4.22 Grafik Redundancy ter hadap String Heter ogen
Dari grafik pada Gambar 4.22 dapat diambil kesimpulan bahwa Redundancy hasil
kompresi String Heterogen dengan Even-Rodeh Code lebih baik dibandingkan dengan
Variable Length Binary Encoding (VLBE).

Universitas Sumatera Utara

63

Gambar 4.23 Grafik Waktu Kompresi ter hadap String Heter ogen
Dari grafik pada Gambar 4.23 dapat diambil kesimpulan waktu yang diperlukan untuk
proses kompresi String Heterogen Variable Length Binary Encoding (VLBE) lebih
banyak dibandingkan