PADA
.DOC
SKRIPSI
DESY H HUSNI
141421106
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
PADA FILE .DOC
SKRIPSI
Diajukan untuk melengkapi tugas akhir dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
Oleh : DESY H HUSNI
141421106
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA MEDAN
2016
PERSETUJUAN
Judul : IMPLEMENTASI DAN ANALISIS ALGORITMA
KOMPRESI PUNCTURED ELIAS CODES DAN
TERNARY COMMA CODE PADA FILE .DOC
Kategori : SKRIPSI
Nama : DESY H HUSNI
Nomor Induk Mahasiswa : 141421106
Program Studi : EKSTENSI S1 ILMU KOMPUTER
Departemen : ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, Juni 2016
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
M. Andri Budiman, S.T., M.Comp.Sc., M.E.M Dr. Syahril Efendi, S.Si, M.IT NIP. 197510082008011011 NIP. 196711101996021001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
PERNYATAAN
IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI
PUNCTURED ELIAS CODES DAN TERNARY COMMA CODE
PADA FILE .DOC
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, Juni 2016
Desy H Husni 1414121106
PENGHARGAAN
Alhamdulillah segala puji dan syukur atas nikmat yang luas kepada Allah Yang Maha Esa
dan Maha Kuasa sehingga penulis dapat menyelesaikan penyusunan skripsi ini sebagai syarat
untuk memperoleh gelar Sarjana Komputer pada Program Studi S1 Ilmu Komputer, Fakultas
Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. Pada kesempatan ini
penulis ingin mengucapkan terima kasih yang sebesar-besarnya kepada:
1. Bapak Prof. DR. Runtung Sitepu, SH, MHum selaku Rektor Universitas Sumatera Utara.
2. Bapak Prof. Dr. Opim Salim Sitompul, M.Sc selaku Dekan Fakultas Ilmu Komputer dan
Teknologi Informasi Universitas Sumatera Utara.
memberikan arahan, kritik dan saran serta motivasi kepada penulis dalam pengerjaan
skripsi ini.
7. M. Andri Budiman, S.T., M.Comp.Sc., M.E.M selaku Dosen Pembimbing II yang telah
memberikan arahan, waktu, tenaga, pikiran, kritik dan saran serta motivasi kepada
penulis dalam pengerjaan skripsi ini.
8. Bapak Drs. Agus Salim Harahap, M.Si selaku Dosen Pembanding I yang telah
memberikan kritik dan saran dalam penyempurnaan laporan skripsi serta mendukung
penuh dalam penyusunan skiripsi
9. Bapak Drs. Marihat Situmorang, M.Kom selaku Dosen Pembanding II yang telah
memberikan kritik dan saran dalam penyempurnaan skripsi ini.
10. Seluruh dosen dan pegawai di Program Studi S1 Ilmu Komputer Fakultas Ilmu
11. Teristimewa kedua orang tua penulis yang tercinta, ibunda Safliati, SST, M.Kes dan
ayahanda Husni, SE yang tidak henti-hentinya memberikan doa, motivasi, serta masukan
yang menjadikan semangat untuk penulis.
12. Abang, Kakak dan adik-adik tersayang Iswandi, SH, MH, Nurul Hikmah, AmdKeb, Octa
Sya Husni dan Al Faredz Husni yang selalu mendoakan serta memberikan semangat
kepada penulis dalam menyelesaikan skripsi ini.
13. Teman–teman mahasiswa S1 Ekstensi Ilmu Komputer stambuk 2014 yang selalu
memberi dukungan.
14. Sahabat seperjuangan saya, Dea Yulianda Pratiwi, Ogiana, Nadra Katika Lingga, Yulni
Witriza yang selalu memberikan semangat untuk cepat lulus dan menjadi teman diskusi
dalam penyelesaian skripsi ini.
15. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat
penulis ucapkan satu per satu yang telah membantu penyelesaian skripsi ini.
Penulis menyadari bahwa skripsi ini masih terdapat kekurangan. Oleh karena itu,
kepada pembaca agar kiranya memberikan kritik dan saran yang bersifat membangun demi
kesempurnaan skripsi ini, sehingga dapat bermanfaat bagi kita semuanya.
Medan, Juni 2016
Desy H Husni
ABSTRAK
Kompresi data adalah proses yang mengkonversi sebuah masukan berupa aliran data (data asli) menjadi suatu aliran data lain (data yang sudah dikompresi) yang memiliki ukuran lebih kecil. Punctured Elias Codes dan Ternary Comma Code adalah jenis kompresi lossless yang digunakan dalam penelitian ini. Parameter yang digunakan untuk mengukur kinerja metode ini yaitu Ratio of Compression (RC), Compression Ratio (CR), Space Savings (SS) dan Time
Process (jumlah waktu yang dibutuhkan selama proses kompresi dan dekompresi
berlangsung). Kompresi file dilakukan dengan membaca string pada file dan mengkodekannya menggunakan kode Punctured Elias Codes dan Ternary Comma Code. File
hasil kompresi akan berekstensi *.pec dan *.tcc yang berisi string bit hasil kompresi yang selanjutnya akan bisa didekompresi. Output dari dekompresi akan berekstensi *.doc sesuai
file aslinya sebelum dikompresi. Sampel pengujian yang digunakan adalah string bit yang terdiri dari satu jenis karakter (Homogen) dan string bit yang terdiri dari beberapa jenis karakter (Heterogen) yang tersimpan dalam file yang berekstensi *.doc. Pada sampel pengujian string homogen, dilihat dari perhitungan RC, CR dan SS algoritma Punctured Elias
Codes dan Ternary Comma Code hampir sama baiknya, namun waktu kompresi dan
dekompresi yang dihasilkan algoritma Ternary Comma Code lebih besar dibandingkan dengan algoritma Punctured Elias Codes. Pada sampel pengujian string heterogen, dilihat dari perhitungan RC, CR, SS, waktu kompresi dan dekompresi yang dihasilkan algoritma Punctured Elias Codes dan Ternary Comma Code hampir sama baiknya.
IMPLEMENTATION AND ANALYSIS OF COMPRESSION ALGORITHMS PUNCTURED ELIAS CODES AND TERNARY COMMA CODE
IN .DOC FILE
ABSTRACT
Data compression is the process that converts an input of the flow of a data stream (original data) into a flow of other data (data was compressed) which has the smaller size. Punctured Elias Codes and Ternary Comma Code is the kind of compress used in this research while the paramater use to measure the process of Ratio of Compression (RC), Compression Ratio (CR),
Space Savings (SS), Time Process (amount of time used during the compress process). In addition, compress for file is with reading or analizing the string of the file and the code is used code Punctured Elias Codes and Ternary Comma Code. The result of compress file will extension *.pec and *.tcc bit string that contains the results of compression that would be decompression. The output of the corresponding *.doc with extension will decompress the original file before it is compressed. The sample of the research used is string bit which are divided into one type of character (Homogen) and others are several types of characters (Heterogen) that is saved into an file with extension *.doc. on the sample testing of homogeny string, as seen from the calculation of RC, CR and SS Punctured Elias Codes and
Ternary Comma Code algorithms almost as good, but compression time and decompression time generated Ternary Comma Code greater than Punctured Elias Codes. On the sample testing of heterogen string, seen from the calculation of RC, CR, SS, compression time and
decompression time produced Punctured Elias Codes and Ternary Comma Code algorithms almost as good.
Keywords : Compression, Compression File, Punctured Elias Codes and Ternary Comma Code Algorithms.
DAFTAR ISI 2.2.2 Parameter Analisis Kinerja Algoritma Kompresi 9
2.3 Dekompresi 10
2.4 Algoritma Punctured Elias Codes 11 2.5 Algoritma Ternary Comma Code 12
2.6 File Teks 13
2.7 Bahasa Pemrograman C# 14 2.8 UML (Unifed Modelling Language) 16
BAB 3 ANALISIS DAN PERANCANGAN SISTEM 20 3.1 Analisis Sistem 20 3.1.1 Analisis Masalah 20 3.1.2 Analisis Kebutuhan 22 3.1.3 Analisis Proses 23
3.1.3.1 Analisis Proses Kompresi Pada Algoritma Punctured Elias Codes
3.1.2.2 Analisis Proses Kompresi Pada Algoritma
Ternary Comma Code 26 3.1.3.3 Analisis Proses Dekompresi Pada Algoritma
Punctured Elias Codes dan Ternary Comma Code 29 3.3.1 Perancangan Alur Proses Sistem Secara Umum 38 3.3.2 Perancangan Alur Proses Kompresi Dan Dekompresi 41 3.3.2.1 Perancangan Alur Proses Kompresi 41 3.3.2.2 Perancangan Alur Proses Dekompresi Algoritma Punctured Elias Codes dan Ternary Comma Code 44 3.3.2.3 Perancangan Sistem Antarmuka 45
BAB 4 Implementasi dan Pengujian Sistem 53 4.1 Implementasi Sistem 53
DAFTAR TABEL
Sorted Dan Telah Dikompresi Dengan Kode Punctured (P1) 25
Tabel 3.5 Ternary Comma Code 26 Tabel 3.6 String Yang Belum Dikompresi 27 Tabel 3.7 String Yang Telah Diurutkan Secara Descending Dan Table
Sorted Dan Telah Dikompresi Dengan Kode Ternary Comma
Code 28
Tabel 3.8 Tabel Hasil Bit String Setelah Dikompresi
Menggunakan Kode Punctured Elias Codes (P1) 30 Tabel 3.9 Dokumentasi Naratif Use Case Kompresi 32 Tabel 3.10 Dokumentasi Naratif Use Case Dekompresi 33 Tabel 4.1 Hasil Pengujian 1 String Homogen Dengan
Punctured Elias Codes 68
Tabel 4.2 Hasil Pengujian 2 String Homogen Dengan
Ternary Comma Code 68
Tabel 4.3 Hasil Pengujian 3 String Heterogen Dengan
Punctured Elias Codes 69
Tabel 4.4 Hasil Pengujian 4 String Heterogen Dengan
DAFTAR GAMBAR Gambar 3.7 FlowchartPunctured Elias Codes Secara Umum Pada Sistem 39 Gambar 3.8 FlowchartTernary Comma Code Secara Umum Pada Sistem 40 Gambar 3.9 Flowchart Proses Kompresi Dengan Algoritma
Punctured Elias Codes 42 Gambar 3.10 Flowchart Proses Kompresi Dengan Algoritma
Ternary Comma Code 43 Gambar 3.11 Flowchart Dekompresi Algoritma PEC dan TCC Secara
Universal 44 Gambar 4.6 Gambar Pemilihan Algoritma Kompresi 59 Gambar 4.7 Gambar Open File Dialog 60 Gambar 4.8 Gambar Save File Dialog 60 Gambar 4.9 Gambar Path Pada Masing-Masing Teks Box 61 Gambar 4.10 Gambar Hasil Proses Kompresi 62 Gambar 4.11 Gambar File Hasil Proses Kompresi (*.pec) 62 Gambar 4.12 Gambar Pemilihan Algoritma Dekompresi 63 Gambar 4.13 Gambar Open File Dialog 64 Gambar 4.14 Gambar Setelah File Berhasil Dipilih 64 Gambar 4.15 Gambar Ketikan atau Copy-PasteString Asli 65
Gambar 4.16 Gambar Save File Dialog 66 Gambar 4.17 Gambar Path Pada Masing-Masing Teks Box 66 Gambar 4.18 Gambar Hasil Proses Kompresi 67 Gambar 4.19 Gambar Ukuran File Asli Sebelum Dikompresi 67 Gambar 4.20 Gambar Ukuran File Asli Setelah Dikompresi 67 Gambar 4.21 Gambar Ukuran File Setelah Didekompresi 68 Gambar 4.22 Grafik Kedua Algoritma Menggunakan String Homogen
Dengan Ukuran File 30 kb 69 Gambar 4.14 Grafik Kedua Algoritma Menggunakan String Heterogen