ANALISIS PERBANDINGAN ALGORITMA BOLDI VIGNA ζ1 CODE DAN ALGORITMA EVEN-RODEH CODE PADA KOMPRESI FILE TEKS SKRIPSI GALUH ATIKA NABILA

Ukuran: px
Mulai penontonan dengan halaman:

Download "ANALISIS PERBANDINGAN ALGORITMA BOLDI VIGNA ζ1 CODE DAN ALGORITMA EVEN-RODEH CODE PADA KOMPRESI FILE TEKS SKRIPSI GALUH ATIKA NABILA"

Transkripsi

1 ANALISIS PERBANDINGAN ALGORITMA BOLDI VIGNA ζ1 CODE DAN ALGORITMA EVEN-RODEH CODE PADA KOMPRESI FILE TEKS SKRIPSI GALUH ATIKA NABILA PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2019

2 ANALISIS PERBANDINGAN ALGORITMA BOLDI VIGNA ζ1 CODE DAN ALGORITMA EVEN-RODEH CODE PADA KOMPRESI FILE TEKS SKRIPSI Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer GALUH ATIKA NABILA PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2019

3 ii

4 iii PERNYATAAN ANALISIS PERBANDINGAN ALGORITMA BOLDI VIGNA ζ1 CODE DAN ALGORITMA EVEN-RODEH CODE PADA KOMPRESI FILE TEKS SKRIPSI Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya. Medan, Februari 2019 Galuh Atika Nabila

5 iv PENGHARGAAN Puji syukur kita sampaikan kehadirat Tuhan Yang Maha Esa yang telah memberikan rahmat serta karunia-nya sehingga penulis dapat menyelesaikan skripsi ini dengan sebaik-baiknya. Pada dasarnya penyusunan skripsi merupakan syarat mutlak yang harus dipenuhi untuk menyelesaikan pendidikan dan menyandang gelar Sarjana Komputer pada Program Studi S1 Ilmu Komputer Fasilkom-TI. Tidak dapat dipungkiri, skripsi ini dapat selesai karena bantuan, semangat, motivasi, dan kerjasama yang diterima penulis dari orang-orang terdekat terutama kedua orang tua penulis. Oleh karena itu, pada kesempatan ini penulis ingin mengucapkan terima kasih yang sebesar-besarnya kepada berbagai pihak yang terkait, antara lain : 1. Prof. Dr. Runtung Sitepu, SH, M.Hum selaku Rektor Universitas Sumatera Utara. 2. Prof. Dr. Opim Salim Sitompul M.Sc selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi. 3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer Fakultas Ilmu komputer dan Teknologi Informasi Universitas Sumatera Utara. 4. Bapak Dr. M.Andri Budiman, S.T., M.Comp.Sc., M.E.M, S.C.J.P selaku dosen pembimbing I yang senantiasa memberikan bimbingan, motivasi, kritik, dan saran kepada penulis selama proses pengerjaan skripsi ini. 5. Bapak Handrizal, S.Si, M.Comp.,Sc selaku dosen pembimbing II yang telah memberikan arahan dan bimbingan kepada penulis dalam penyempurnaan skripsi ini. 6. Bapak Dr. Poltak Sihombing, M.Kom selaku Dosen Pembanding I yang telah memberikan kritik dan saran untuk penyelesaian skripsi ini. 7. Bapak Herriyance, S.T., M.Kom selaku Dosen Pembanding II yang telah memberikan masukan dan saran untuk perbaikan skripsi ini. 8. Seluruh staf pengajar dan pegawai di Fakultas Ilmu Komputer dan Teknologi Informasi USU.

6 v 9. Ayahanda Drs. Satriawan Taruna, M.Si, Ibunda tercinta Dini Sartika dan adinda Puan Abidah Nitisara yang tanpa lelah memberi kasih sayang, perhatian, dukungan, dan doa terbaik untuk penulis dalam pengerjaan skripsi. 10. Sahabat seperjuangan Khairunnada dan Rahmatunnisa Siregar yang menjadi tempat berkeluh-kesah, serta saling memberikan semangat selama mengerjakan skripsi. 11. Sahabat tercinta UNIFFEECA yang selalu memberikan memberikan semangat kepada penulis selama mengerjakan skripsi. 12. Teman - teman nongkrong di IKLC Irfan Lazuardi, Audhika Gaindata, Zikri Akmal Santoso, Dormen Hutagalung, Hairunnisa Lubis, Cindy Laurent Ginting yang telah memberikan semangat kepada penulis dalam pengerjaan skripsi. 13. Teman teman seperjuangan Aftika Wulandari dan Mayrisa yang kerap menemani dan memberikan semangat selama pengerjaan skripsi 14. Abangda Rahmat Setyo Aji dan Abangda Muhari Akbar yang senantiasa membantu dan memberi dukungan dalam penulisan skripi ini. 15. Rekan rekan asisten di Ilmu Komputer Laboratory Center (IKLC) USU yang tidak dapat disebutkan satu per satu. 16. Keluarga Kom A 2015 Ilmu Komputer yang banyak memberi motivasi kepada penulis dalam pengerjaan skripsi ini. 17. Teman-teman stambuk 2015, kakak abang senior dan adik-adik junior yang selalu memberi semangat kepada penulis 18. Dan semua pihak yang telah membantu yang tidak dapat disebutkan satu per satu. Terima kasih kepada semua pihak, semoga semua kebaikan, perhatian, bantuan serta dukungan yang telah diberikan kepada penulis semoga mendapatkan balasan yang setimpal dari Allah swt. Semoga Skripsi ini dapat bermanfaat bagi orang banyak. Medan, Februari 2019 Penulis

7 vi ABSTRAK Penggunaan komputer sebagai media informasi digital merupakan salah satu cara untuk pengaksesan informasi di masyarakat. Informasi yang beredar dapat berupa teks, suara, dan citra yang dikemas secara digital. Tentunya hal ini akan memerlukan media penyimpanan yang lumayan besar. Oleh karena itu diperlukan alternatif dalam penyimpanan data yang dapat meningkatkan efisiensi dari penggunaan media penyimpanan. Salah satu cara yang dapat digunakan adalah teknik kompresi data. Penelitian ini membandingkan dua algoritma kompresi, yaitu algoritma Boldi-Vigna ζ1 Code dan Even-Rodeh Code dalam hal kompresi file teks. Nilai Compression Ratio (CR), Space Savings (SS), Bit rate serta Running Time dihitung dalam pengujian sebagai bahan pertimbangan untuk membandingkan keunggulan dari kedua algoritma yang digunakan. Pengujian yang dilakukan menggunakan string homogen, string heterogen dan artificial corpus. Dalam kompresi string homogen maupun heterogen, algoritma Boldi-Vigna ζ1 Code lebih unggul karena nilai Bit rate yang lebih rendah serta Space Saving yang lebih besar untuk setiap jumlah string yang digunakan. Dari segi waktu kompresi, algoritma Boldi-Vigna ζ1 Code lebih cepat prosesnya daripada algoritma Even-Rodeh Code. Nilai kompleksitas algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code yang dihasilkan dalam penelitian ini sama besar yaitu Θ(n). Kata kunci: Boldi-Vigna ζ1 Code, Even-Rodeh Code, Kompresi, Dekompresi, File teks

8 vii ANALYSIS OF BOLDI VIGNA ζ1 CODE ALGORITHM AND EVEN-RODEH CODE ALGORITHM FOR COMPRESSION ON TEXT FILE ABSTRACT The use of computers as digital information media is one way to access information in society. It can be digitally packaged in the form of text, sound, and image. Surely this would requires a quite big storage. Therefore, it is required an alternative way in data storage that could increase the efficiency in using of storage media. One way that can be used is data compression techniques. This research compares two compression algorithms, Boldi-Vigna ζ1 Code algorithm and Even-Rodeh Code algorithm in text file compression. The value of Compression Ratio, Space Savings (SS), Bit Rate and Running Time are calculated in testing as consideration to compare the advantage of both algorithms. The testing is done using homogeneous string type, heterogeneous string type and artificial corpus. In compression of both homogeneous string type and heterogeneous string type, Boldi-Vigna ζ1 Code algorithm is superior to Even-Rodeh Code algorithm because of lower Bit Rate and greater Space Saving for each number of strings used. In terms of compression time, Boldi-Vigna ζ1 Code algorithm is faster than Even-Rodeh Code algorithm. The complexity of Boldi-Vigna ζ1 Code and Even-Rodeh Code algorithm produced in this research both are the same as θ(n). Keywords: Boldi-Vigna ζ1 Code, Even-Rodeh Code, Compression, Decompression, Text File

9 viii DAFTAR ISI Halaman Persetujuan...ii Pernyataan...ii Penghargaan... iv Abstrak... vi Abstract... vii Daftar Isi... viii Bab 1 Pendahuluan Latar Belakang Rumusan Masalah Batasan Masalah Tujuan Penelitian Manfaat Penelitian Metode Penelitian Sistematika Penulisan... 4 Bab 2 Landasan Teori Kompresi Data Teknik Kompresi Data Kompresi Lossless (Lossless Compression) Kompresi Lossy (Lossy Compression) Konsep Kompresi Data Parameter Analisis Kinerja Kompresi Algoritma Algoritma Even-Rodeh Code Algoritma Boldi-Vigna (ζ1) Kompleksitas Algoritma Big Theta Penelitian yang Relevan Bab 3 Analisis dan Perancangan Sistem... 24

10 ix 3.1. Analisis Sistem Analisis Masalah Analisis Kebutuhan Pemodelan Sistem Use Case Diagram Activity diagram pada proses kompresi Boldi-Vigna ζ1 Code Activity diagram pada proses kompresi Even-Rodeh Code Sequence Diagram Pseudocode Pseudocode Algoritma Boldi-Vigna ζ1 Code Pseudocode Algoritma Even-Rodeh Code Flowchart Flowchart sistem secara umum Flowchart Algoritma Boldi-Vigna ζ1 Code Flowchart Algoritma Even-Rodeh Code Perancangan Antarmuka Halaman Home Form Compression Form Decompression Form Help Form About Bab 4 Implementasi dan Pengujian Sistem Implementasi Algoritma Implementasi Algoritma Boldi-Vigna ζ1 Code Implementasi Algoritma Even-Rodeh Code Implementasi Sistem Form Home Form Compression Form Decompression Form Help Form About Pengujian Sistem Pengujian Proses Kompresi Pengujian Proses Dekompresi... 56

11 x Hasil Pengujian Pengujian String Homogen Pengujian String Heterogen Pengujian Corpus Kompleksitas Algoritma Bab 5 Kesimpulan dan Saran Kesimpulan Saran DAFTAR PUSTAKA... 77

12 xi DAFTAR TABEL Halaman Tabel 2.1 Kode algoritma Even-Rodeh Code Tabel 2.2 Jumlah Kode Algoritma Even-Rodeh Code Berdasarkan Variasi Karakter. 11 Tabel 2.3 String yang belum dikompresi Tabel 2.4 String yang sudah dikompresi dengan Even-Rodeh Code Tabel 2.5 Kode Daftar Boldi-Vigna ζ Tabel 2.6 String yang belum dikompresi Tabel 2.7 String yang telah dikompresi dengan Boldi-Vigna ζ1 Code Tabel 4.1 Ukuran String Sebelum Dikompresi Tabel 4.2 Ukuran String Setelah Dikompresi Dengan Boldi-Vigna ζ1 Code Tabel 4.3 Ukuran String Setelah Dikompresi Dengan Even-Rodeh Code Tabel 4.4 File Berisi String Homogen Tabel 4.5 File Berisi String Heterogen Tabel 4.6 Hasil Pengujian String Homogen dengan Boldi-Vigna ζ1 Code Tabel 4.7 Hasil Pengujian String Homogen dengan Even-Rodeh Code Tabel 4.8 Hasil Pengujian String Heterogen dengan Boldi-Vigna ζ1 Code Tabel 4.9 Hasil Pengujian String Heterogen dengan Even-Rodeh Code Tabel 4.10 File Uji Artificial Corpus Tabel 4.11 Hasil Pengujian Boldi-Vigna ζ1 Code terhadap File Artificial Corpus Tabel 4.12 Hasil Pengujian Even-Rodeh Code terhadap File Artificial Corpus Tabel 4.13 Kompleksitas Algoritma Boldi-Vigna ζ1 Code Tabel 4.14 Kompleksitas Algoritma Even-Rodeh Code... 73

13 xii DAFTAR GAMBAR Halaman Gambar 2.1 Diagram Blok Proses Kompresi dan Dekompresi Data (Pu, 2005)...6 Gambar 2.2 Diagram Blok Kompresi Lossless (Pu, 2005)...7 Gambar 2.3 Diagram Blok Kompresi Lossy (Pu, 2005)...8 Gambar 2.4 Grafik Θ (Cormen, et al., 2009) Gambar 3.1 Diagram Ishikawa Analisis Masalah Gambar 3.2 Use Case Diagram Pada Sistem Gambar 3. 3 Activity Diagram proses Kompresi Boldi-Vigna ζ1 Code Gambar 3. 4 Activity Diagram proses Kompresi Even-Rodeh Code Gambar 3.5 Sequence diagram proses kompresi Gambar 3.6 Sequence diagram proses dekompresi Gambar 3.7 Flowchart Sistem Secara Umum Gambar 3.8 Flowchart algoritma Boldi-Vigna ζ1 Code Gambar 3. 9 Flowchart algoritma Even-Rodeh Code Gambar 3.10 Rancangan Halaman Utama Gambar 3.11 Form Compression pada sistem Gambar 3.12 Form Decompression pada Sistem Gambar 3.13 Form Help pada Sistem Gambar 3.14 Form About pada Sistem Gambar 4.1 Tampilan Halaman Awal Form Home Gambar 4.2 Tampilan Form Compression Gambar 4.3 Tampilan Form Decompression Gambar 4.4 Tampilan Form Help Gambar 4.5 Tampilan Form About Gambar 4.6 Tampilan Proses Kompresi Gambar 4.7 Tampilan Kotak Dialog Save File Pada Proses Kompresi Gambar 4. 8 Proses Kompresi Setelah Di Atur Ulang Gambar 4. 9 Tampilan Menu Dekompresi Gambar 4.10 Tampilan Kotak Dialog Save File Pada Proses Dekompresi Gambar 4.11 Proses Dekompresi... 57

14 xiii Gambar 4.12 Grafik Compression Ratio terhadap String Homogen Gambar 4.13 Grafik Bitrate terhadap String Homogen Gambar 4.14 Grafik Space Savings terhadap String Homogen Gambar 4.15 Grafik Waktu Kompresi terhadap String Homogen Gambar 4.16 Grafik Waktu Dekompresi terhadap String Homogen Gambar 4.17 Grafik Compression Ratio terhadap String Heterogen Gambar 4.18 Grafik Bitrate terhadap String Heterogen Gambar 4.19 Grafik Space Savings terhadap String Heterogen Gambar 4.20 Grafik Waktu Kompresi terhadap String Heterogen Gambar 4.21 Grafik Waktu Dekompresi terhadap String Heterogen... 69

15 xiv DAFTAR LAMPIRAN Halaman Lampiran 1 LISTING PROGRAM... A-1 Lampiran 2 CURRICULUM VITAE... B-1

16 BAB 1 PENDAHULUAN 1.1 Latar Belakang Kebutuhan akan informasi sudah tak dapat dipisahkan dari kehidupan sehari-hari masyarakat umum. Penggunaan komputer sebagai media informasi digital merupakan salah satu cara untuk pengaksesan informasi di masyarakat. Informasi yang beredar dapat berupa teks, suara, dan citra yang dikemas secara digital. Tentunya hal ini akan memerlukan media penyimpanan yang lumayan besar. Oleh karena itu diperlukan alternatif dalam penyimpanan data yang dapat meningkatkan efisiensi dari penggunaan media penyimpanan. Salah satu cara yang digunakan untuk mengefisiensikan media penyimpanan adalah teknik kompresi data. Kompresi data merupakan sebuah proses dimana terdapat pegubahan pada aliran data masukan (data asli) ke dalam aliran data yang lain dan mempunyai ukuran data yang lebih kecil (Salomon & Motta, 2010). Dengan melakukan kompresi data, maka kita dapat meminimalisir kebutuhan akan penyimpanan data, mempercepat pengiriman/transmisi data dan memperkecil kebutuhan bandwith. Pada penelitian ini akan dilakukan perbandingan dari kedua algoritma kompresi yaitu algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code. untuk mengetahui algoritma mana yang lebih efisien dalam hal kompresi file teks. Kinerja algoritma tersebut akan diukur berdasarkan parameter Compression Ratio (CR), Space Saving (SS), bit rate, waktu kompresi dan dekompresi yang dihitung dalam satuan milisekon. Algoritma Boldi-Vigna ζ1 Code dikenalkan oleh Paolo Boldi dan Sebastiano Vigna sebagai salah satu anggota variable-length code yang merupakan opsi terbaik dalam kompresi WebGraphs (Salomon, 2007). Algoritma ini dikembangkan pada suatu studi WebGraph yang sekarang dikenal sebagai World Wide Web (WWW) dengan tujuan untuk memperkecil kapasitas konten pada WebGraph tersebut. Sedangkan algoritma Even-Rodeh Code merupakan algoritma kompresi yang hampir

17 2 sama dengan algoritma Elias Omega Code, namun perbedaan utamanya adalah panjang dari kodenya akan ditambahkan hingga 3 bit dan menjadi kelompok paling kiri dari kode (Salomon, 2007). Dalam pembangkitan kode algoritma kompresi data ini dilakukan dengan cara melakukan pengkodean terhadap setiap karakter dengan menggunakan beberapa rangkaian bit. Pembentukan bit yang merepresentase setiap karakter didasarkan pada frekuensi kemunculan tiap karakter. Berdasarkan pada penelitian terdahulu diantaranya seperti pada penelitian yang berjudul On Using Goldbach G0 Codes and Even-Rodeh Codes for Text Compression (M. A. Budiman dan D. Rachmawati, 2017) yang menunjukkan bahwa hasil dari penelitian tersebut adalah algoritma Even-Rodeh Code cenderung lebih efisien dari algoritma Golbach G0 Code. Hal ini dikarenakan Even-Rodeh Code memiliki nilai Compression Ratio (CR) dan Space Saving yang lebih besar serta nilai Bitrate yang lebih rendah dari Goldbach G0 Code. Berdasarkan latar belakang diatas, penulis ingin membandingkan tingkat efisiensi dari algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code dalam melakukan kompresi pada file teks. 1.2 Rumusan Masalah Berdasarkan latar belakang tersebut, maka rumusan masalahnya yaitu bagaimana perbandingan kinerja penggunaan algoritma Boldi-Vigna ζ1 Code dan algoritma Even- Rodeh Code pada kompresi file teks. 1.3 Batasan Masalah Dalam melakukan penelitian ini, peneliti membatasi ruang masalah yang akan diteliti agar tulisan ini tidak menyimpang dari ruang lingkup pembahasan diperlukan. Batasan-batasan masalah yang digunakan adalah sebagai berikut: 1. Membandingkan dua algoritma kompresi data yaitu Boldi-Vigna ζ1 Code dan Even-Rodeh Code. 2. Kode Boldi-Vigna yang akan digunakan hanya Boldi-Vigna ζ1 Code. 3. Jenis data yang akan dikompresi adalah karakter ASCII sebanyak 256 karakter antara lain: huruf, angka, baris baru, tab, spasi dan simbol dalam file teks yang memiliki ekstensi *.txt

18 3 4. File uji yang akan dikompresi adalah string homogen, string heterogen dan dan artificial corpus. 5. Parameter yang digunakan dalam pengukuran kinerja algoritma ini adalah time (waktu kompresi(ms) dan waktu dekompresi(ms)), compression ratio (CR), space saving (SS), dan bit rate. 6. Implementasi dari penelitian ini berbasis pada bahasa pemrograman visual yaitu C#. 7. Pengukuran kompleksitas dari algoritma algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code menggunakan notasi Big θ (Theta). 1.4 Tujuan Penelitian Berdasarkan rumusan masalah yang telah dirincikan sebelumnya, maka tujuan penelitian dari judul ini adalah untuk mengetahui algoritma mana yang lebih cocok dan efisien dalam kompresi file teks diantara algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code. 1.5 Manfaat Penelitian Manfaat yang diharapkan dapat dihasilkan dari penelitian ini adalah sebagai berikut: 1. Menghemat ruang penyimpanan data dengan dilakukannya proses kompresi pada file teks dengan algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code. 2. Mengetahui proses kompresi dan dekompresi pada algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code. 3. Mengetahui perbandingan kinerja terbaik dari algoritma mana diantara algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code yang lebih efisien dalam kompresi file teks. 4. Bermanfaat sebagai sumber rujukan dan referensi untuk penelitian selanjutnya terkait kompresi file teks menggunakan algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code.

19 4 1.6 Metode Penelitian Metode penelitian yang dilakukan dalam penelitian ini adalah: 1. Studi Literatur Penulis melakukan penelitian dimulai dengan mencari referensi dari berbagai sumber terpercaya dan melakukan peninjauan pustaka melalui buku-buku, artikel ilmiah, dan penelitian-penelitian lainnya dalam bentuk jurnal yang berhubungan dengan Algoritma Boldi-Vigna ζ1 Code dan Algoritma Even- Rodeh Code. 2. Analisa dan Perancangan Berdasarkan ruang lingkup penelitian, penulis melakukan analisa terhadap apa saja yang akan dibutuhkan oleh sistem yang akan dibuat. Selain itu, penulis melakukan perancangan sistem dimulai dari desain interface, struktur data, diagram alir (flowchart) dan diagram Ishikawa 3. Implementasi Melakukan proses pembangunan perangkat lunak/coding sebagai realisasi untuk diimplementasikan dalam sebuah sistem yang menggunakan bahasa pemrograman C# sesuai dengan diagram alir (flowchart) yang telah dirancang. 4. Pengujian Pada tahap ini dilakukan uji coba terhadap sistem yang telah dikembangkan. 5. Dokumentasi Pada tahap terakhir ini, penelitian yang telah dilakukan, didokumentasikan mulai dari tahap analisa sampai kepada pengujian dan akhirnya dibuat dalam bentuk skripsi. 1.7 Sistematika Penulisan Sistematika dalam penulisan skripsi ini disusun menjadi beberapa bab, diantaranya yaitu: BAB I PENDAHULUAN Bab ini berisi latar belakang masalah dari penelitian judul skripsi Analisis Perbandingan Algoritma Boldi-Vigna ζ1 Code dan Algoritma Even-Rodeh Code pada Kompresi File Teks, rumusan masalah, batasan

20 5 masalah, tujuan penelitian, manfaat penelitian, metode penelitian dan sistematika penulisan. BAB II LANDASAN TEORI Bab ini berisi teori-teori yang digunakan sebagai pendukung dalam penulisan penelitian, selain itu dalam bab 2 juga dijelaskan mengenai metode yang digunakan dalam penelitian. BAB III ANALISIS DAN PERANCANGAN SISTEM Bab ini terdiri dari tahap analisis sistem yang mencakup analisis masalah, analisis kebutuhan dan analisis proses kemudian desain/model perancangan dari program yang akan dibuat, dalam hal ini termasuk juga algoritma dari program tersebut. BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM Bab ini berisi mengenai implementasi dan pengujian dari program yang sistemnya telah dirancang dan dianalisis sebelumnya. BAB V KESIMPULAN DAN SARAN Bab terakhir berisi kesimpulan dari hasil penelitian yang telah selesai dilakukan, juga saran atau rekomendasi yang bermanfaat guna pengembangan dan penelitian lebih lanjut.

21 BAB 2 LANDASAN TEORI 2.1. Kompresi Data Dalam ilmu komputer, kompresi data merupakan ilmu atau seni dalam mengimplementasikan informasi pada suatu data ke dalam bentuk yang lebih padat (kecil) (Pu, 2005). Kompresi data merupakan seni atau ilmu yang merepresentasikan informasi dalam bentuk yang lebih ringkas. Data dapat berupa karakter dalam file teks, gambar atau urutan angka yang dihasilkan oleh proses lain. Dengan kata lain, menggunakan kompresi data, ukuran file tertentu dapat dikurangi. Dengan merujuk pada beberapa definisi diatas, maka dapat disimpulkan bahwa kompresi adalah cara untuk memadatkan data sehingga hanya memerlukan ruang penyimpanan lebih kecil sehingga lebih efisien dalam penyimpanan maupun dalam proses transfer data pada jaringan. Prinsip dasar kompresi data adalah memperkecil besar bit data untuk merepresentasi tiap-tiap karakter pada teks yang ingin dikompresi (Jamaluddin, 2013). Proses kompresi dan dekompresi pada data dapat ditunjukkan melalui diagram blok seperti pada Gambar 1.1 Uncompressed Data Kompresi Compressed Data Compressed Data Dekompresi Uncompressed Data Gambar 2.1 Diagram Blok Proses Kompresi dan Dekompresi Data (Pu, 2005)

22 Teknik Kompresi Data Jika dilihat dari segi kemungkinan data/file yang telah dikompresi untuk dapat dikembalikan ke data/file aslinya, teknik kompresi data terbagi dua yaitu kompresi data Lossless dan kompresi data Lossy (Pu, 2005) Kompresi Lossless (Lossless Compression) Kompresi Lossless merupakan metode kompresi data yang memungkinkan data asli bisa dikembalikan secara utuh. Algoritma kompresi dikatakan lossless jika teknik kompresi data tersebut dapat mengembalikan data hasil kompresi ke data semula tanpa kehilangan informasi apapun dari data asli (Pu, 2005). Kompresi Lossless memiliki akurasi data yang terjaga antara sebelum dan sesudah proses kompresi meskipun dengan derajat kompresi yang lebih rendah. Contoh metode ini adalah Elias Delta Code, Elias Gama Code, Levenstein Code, Shanno-Fano Coding, Run Length Encoding, Even-Rodeh Code dan lain-lain. Konsep dasar kompresi Lossless dapat dilihat pada Gambar 2.2. Compression Original Restored Gambar 2.2 Diagram Blok Kompresi Lossless (Pu, 2005)

23 Kompresi Lossy (Lossy Compression) Kompresi Lossy merupakan metoda kompresi data yang tidak menghasilkan data asli sebelum kompresi. Meskipun perbedaan itu cukup dekfat, kompresi jenis ini tidak baik untuk kompresi data yang seperti data teks, melainkan sering digunakan pada data audio, berkas, dan gambar. Algoritma kompresi dikatakan lossy adalah teknik kompresi data dimana data mengalami sedikit atau banyak kehilangan data pada saat kompresi (Pu, 2005). Kompresi Lossy memiliki derajat kompresi yang lebih tinggi, tetapi akurasi data tidak terjaga antara sebelum dan sesudah proses kompresi karena ada beberapa detail data yang hilang. Contoh metode ini adalah Transform Coding, Walet, dan lain-lain. Konsep dasar kompresi lossy dapat dilihat pada gambar 2.3. Compression Original Restored Gambar 2.3 Diagram Blok Kompresi Lossy (Pu, 2005) 2.3. Konsep Kompresi Data Di dalam komputer, satu karakter dipresentasikan dalam bilangan ASCII (American Standard Code For Information Interchange) yaitu sebanyak 8 bit dalam baingan biner.jika ternhata jumlah bit-bit data tersebut bukan merupakan kelipatan 8, maka dibentuk variable baru sebagai penambahan ke bit-bit data itu agar bit data tersebut habis dibagi oleh 8. Variabel yang dimaksud disini adalah padding dan flag. a. Padding Padding adalah penambahan bit 0 sebanyak kekurangan jumlah bit-bit data pada hasil proses kompresi sehingga jumlah keseluruhan bit-bit data pada hasil kompresi habis

24 9 dibagi delapan. Sebagai contoh, misalkan terdapat bit bit data hasil kompresi Terdapat 26 bit data dalam bilangan biner. Maka dilakukan penambahan bit 0 sebanyak 6 kali agar jumlah bit data tersebut dapat habis bila dibagi delapan. Sehingga bit-bit data tersebut menjadi setelah diberikan padding (Batubara, 2017). b. Flag Bits Flag bits adalah penambahan bilangan biner sepanjang delapan bit setelah padding dimana flag bits ini adalah sejumlah bilangan yang memberikan sebuah tanda bahwa terdapat n buah padding di dalam bit-bit data hasil dari kompresi. Contoh misalkan bitbit data yang telah diberikan padding adalah Karena terdapat 7 bit penambahan padding maka flag bits-nya adalah bilangan biner dari 7 dengan panjang 6 bit yaitu Sehingga bit-bit datanya menjadi setelah diberikan flag bits (Batubara, 2017). 2.4 Parameter Analisis Kinerja Kompresi Pada kompresi terdapat beberapa faktor penting yang perlu diperhatikan sebagai bahan pertimbangan untuk mengukur kualitas dari suatu metode kompresi, serta mendapatkan hasil perbandingan dari kedua metode yang diuji, yaitu : 1. Compression Ratio (CR) Compression Ratio (CR) adalah perbandingan ukuran data sebelum dikompresi dengan setelah dikompresi. (Motta, 2006) C R = ukuran data setelah dikompresi ukuran data sebelum dikompresi Misalkan didapat sebuah nilai Compression Ratio sebesar 55%. Itu berarti setelah dikompresi ukuran data adalah 55% dari data sebelum dikompresi. 2. Bitrate Bitrate adalah teknik yang digunakan untuk mengodekan simbol dengan ratarata bit itu sendiri, yang dicari dengan membagi ukuran bit terkompresi dengan jumlah simbol unik (jenis karakter) pada setiap teks (Rao, 2000).

25 10 Bit rate = ukuran bit terkompresi jumlah jenis karakter 3. Space Savings (SS) Space Savings (SS) adalah persentase penghemaran rang (memori) setelah file dikompresi dengan mencari persentase selisih antara data awal sebelum dikompresi dengan hasil data yang telah dikompresi (Ida, 2006). ukuran data sebelum dikompresi ukuran data setelah dikompresi SS = ( ) 100% ukuran data sebelum dikompresi 4. Waktu Kompresi dan Dekompresi Waktu kompresi dan dekompresi adalah lama waktu yang dibutuhkan untuk melakukan proses kompresi dan dekompresi dari mulai pembacaan data hingga proses encoding pada data tersebut. 2.5 Algoritma Algoritma Even-Rodeh Code Algoritma Even-Rodeh Code merupakan algoritma untuk mengkompresi data atau file dengan mengkodekan setiap karakter menggunakan beberapa rangkaian bit. Pembentukan bit pada algoritma ini mewakili masing-masing karakter dibuat berdasarkan frekuensi kemunculan setiap karakter. Algoritma Even-Rodeh Code ini bersifat lossless, dimana hal ini merupakan suatu kelebihan karena dengan kompresi lossless dapat meminimalisir adanya kehilangan atau kerusakan data yang terjadi pada sumber data asli yang sangat penting (Pu, 2005). Tahap membangun kode Even-Rodeh Code dengan n sebagai indeks dari karakter yaitu sebagai berikut : 1. Menghitung panjang bit. 2. Jika kode memiliki panjang bit 0 <= n <=3 maka nilai n diubah ke biner, tambahkan 0 didepan nilai biner sehingga bit berjumlah 3 digit. 3. Jika panjang kode sebanyak bit 4 <= n <= 7maka nilai n diubah ke biner, tambahkan 0 dibelakang nilai biner sehingga bit menjadi 4 digit. 4. Jika kode dengan panjang bit n >= 8 maka nilai n diubah ke biner, tambahkan angka 0 dibelakang nilai biner dari kode kemudian ditambahkan nilai biner dari panjang bit dari nilai biner kode tersebut didepan nilai biner kode.

26 11 Beberapa daftar kode Even-Rodeh Code dan jumlah bit kode Even-Rodeh Code berdasarkan frekuensi karakter terdapat pada Tabel 2.1 dan Tabel 2.2. Tabel 2.1 Kode algoritma Even-Rodeh Code N Even-Rodeh Code Tabel 2.2 Jumlah Kode Algoritma Even-Rodeh Code Berdasarkan Variasi Karakter N Jumlah bit Even- Rodeh Code

27 12 Contoh sederhana pada proses kompresi serta dekompresi file dengan metode Even- Rodeh Code pada string GALUH ATIKA NABILA adalah sebagai berikut: Penjelasan dari string GALUH ATIKA NABILA sebelum dikompresi terdapat pada tabel 2.3. Tabel 2.3 String yang belum dikompresi Karakter ASCII ASCII Code Freq Bit Freq*Bit Code (Binary) G A L U H Sp T I K N B Jumlah Bit 152 Bit Berdasarkan tabel diatas, maka didapat string bit sebelum dikompresi yaitu dengan uraian sebagai berikut: G A L U H

28 Sp A T I K A Sp N A B I L A Sebelum dilakukan proses kompresi, karakter akan diurutkan berdasarkan karakter yang memiliki frekuensi yang paling besar hingga yang paling kecil sehingga didapat n (panjang bit dalam karakter yang telah diurutkan) kemudian dilakukan proses pengkodean algoritma Even-Rodeh Code, maka didapat string hasil kompresi seperti pada tabel 2.4. Σ = G, A, L, U, H, Sp, T, I, K, N, B, L, dengan Sp = spasi Maka dibuat sebuah tabel untuk menghitung bit setelah di kompresi terlihat seperti pada tabel 2.4. Tabel 2.4 String yang sudah dikompresi dengan Even-Rodeh Code Σ Freq Even-Rodeh Code Bit Freq*Bit A L Sp I G U H T

29 14 Σ Freq Even-Rodeh Code Bit Freq*Bit K N B Jumlah Bit 73 Bit Berdasarkan tabel diatas, maka didapat string bit sebelum dikompresi yaitu dengan uraian sebagai berikut: G A L U H Sp A T I K A Sp N A B I L A Setelahnya dilakukan penambahan bit-bit padding dan flag bits diawal dan diakhir string bit sehingga panjang string bit bisa habis dibagi delapan. Karena jumlah string adalah 59 bit, tentu tidak habis dibagi delapan dan sisanya adalah 1. Sehingga

30 15 dibutuhkan bit 0 sebanyak 7 kali, maka padding adalah dan flag bits-nya adalah bilangan biner dari 7 yaitu Diperoleh: String bit hasil kompresi = Total bit seluruhnya adalah penambahan padding dan flag adalah = 88. Untuk proses dekompresi terhadap string bit yang telah dikompresi adalah dengan menentukan indeks terkahir untuk proses pembacaan string yaitu total panjang string bit seluruhnya dikurang dengan flag ditambah padding atau dapat ditulis: n = panjang string bit (flag+padding) n = 88 (7+8) n = 73 String bit yang dibaca adalah 73 string bit awal. Maka: G A L U H Sp A T I K

31 16 A Sp N A B I L A Algoritma Boldi-Vigna (ζ1) Kode Zeta (ζ) juga dikenal sebagai Boldi-Vigna code, diperkenalkan oleh Paolo Boldi dan Sebastiano Vigna sebagai keluarga Variable-Length Code yang merupakan pilihan terbaik untuk kompresi. Dimulai dengan hukum Zipf, seorang kuasa hukum empiris [Zipf 07] diperkenalkan oleh Linguis George K. Zipf. menyatakan bahwa frekuensi setiap kata dalam bahasa apapun kira-kira berbanding terbalik dengan posisinya dalam tabel frekuensi. Boldi-Vigna Zeta Code dimulai dengan bilangan bulat k positif yang menjadi faktor penyusutan kode zeta. Himpunan semua bilangan bulat positif dibagi dalam beberapa interval yaitu [2 0, 2 k - 1], [2 k, 2 2k - 1], [2 2k, 2 3k - 1], dan secara umum dapat dituliskan menjadi [2 hk, 2 (h + 1) k - 1]. Panjang setiap interval adalah 2 (h + 1) k - 2 hk (Salomon, 2007). Diberikan interval [0, z-1] dan sebuah integer x di interval ini, pertama kita hitung s =[ log2 z]. Jika x <2 s - z, pada s - 1 bit. Jika tidak, maka dikodekan sebagai (x - z - 2 s ) pada interval di s bit. Dengan latar belakang tersebut, akan dibahas bagaimana kode zeta dibangun. Nilai h dan k yang digunakan untuk membangun kode zeta n dalam dua bagian, nilai h + 1 sebgai unary (0 sebanyak h diikuti dengan 1), lalu diikuti oleh kode biner minimal dari n - 2 hk dalam interval [0, 2 (h + 1) k - 2 hk - 1] (Salomon, 2007). Contoh daftar kode Boldi-Vigna (ζ1) dapat dilihat pada tabel 2.5 seperti berikut:

32 17 Tabel 2.5 Kode Daftar Boldi-Vigna ζ1 N ζ Contoh sederhana pada proses kompresi dan dekompresi file dengan metode Boldi- Vigna (ζ1) Code pada string GALUH ATIKA NABILA adalah sebagai berikut:

33 18 Penjelasan dari string GALUH ATIKA NABILA sebelum dikompresi terdapat pada tabel 2.6. Tabel 2.6 String yang belum dikompresi Karakter ASCII ASCII Code Freq Bit Freq*Bit Code (Binary) G A L U H Sp T I K N B Jumlah Bit 152 Bit Berdasarkan tabel diatas, maka didapat string bit sebelum dikompresi yaitu dengan uraian sebagai berikut: G A L U H Sp A T I K

34 A Sp N A B I L A Sebelum melakukan proses kompresi, karakter tersebut diurutkan terlebih dahulu berdasarkan dari karakter yang memiliki frekuensi terbesar ke terkecil sehingga didapat n (panjang bit dalam karakter yang telah diurutkan) kemudian dilakukan proses pengkodean algoritma Boldi-Vigna (ζ1) Code, maka didapat string hasil kompresi seperti pada tabel 2.7. Σ = G, A, L, U, H, Sp, T, I, K, N, B, L, dengan Sp = spasi Maka dibuat sebuah tabel untuk menghitung bit setelah di kompresi terlihat seperti pada tabel 2.7. Tabel 2.7 String yang telah dikompresi dengan Boldi-Vigna ζ1 Code Σ Freq Boldi-Vigna ζ1 Code Bit Freq*Bit A L Sp I G U H T K N B Jumlah Bit 72 Bit

35 20 Berdasarkan tabel diatas, maka didapat string bit sebelum dikompresi yaitu Sebelum ditulis ke sebuah file hasil kompresi dilakukan penambahan bit-bit padding dan flag bits diawal dan diakhir string bit sehingga panjang string bit bisa habis dibagi delapan. Karena jumlah string adalah 72 bit, tentu habis dibagi delapan. Sehingga tidak dibutuhkan bit 0 dan flag bits-nya adalah bilangan biner dari 0 yaitu Diperoleh: String bit hasil kompresi = Total bit seluruhnya adalah penambahan padding dan flag adalah 72+8 = 80. Untuk proses dekompresi terhadap string bit yang telah dikompresi adalah dengan menentukan indeks terkahir untuk proses pembacaan string yaitu total panjang string bit seluruhnya dikurang dengan flag ditambah padding atau dapat ditulis: n = panjang string bit (flag+padding) n = 80 (0+8) n = 72 String bit yang dibaca adalah 72 string bit awal. Maka: G A L U H

36 21 Sp A T I K A Sp N A B I L A Kompleksitas Algoritma Algoritma merupakan salah satu cabang ilmu dari ilmu komputer yang membahas prosedur penyelesaian suatu permasalahan. Dengan menggunakan algoritma yang baik maka komputer bisa menyelesaiakan perhitungan dengan cepat dan benar. Sebaliknya jika algoritma kurang baik maka penyelesaian lambat dan bahkan menyebabkan tidak dapat menemukan solusi yang diharapkan. Baik buruknya sebuah algoritma dapat dibuktikan dari kompleksitas waktu yang digunakan (Purwanto, 2008). Kompleksitas algoritma meliputi hal hal berikut ini : 1. Perancangan yang artinya kegiatan untuk melakukan pendeskripsian algoritma pada suatu tingkatan yang memiliki arti bahasa semu (pseudo) dan pembuktian kebenaran bahwa suatu algoritma dapat menyelesaikan suatu permasalahan yang diberikan (Purwanto, 2008). 2. Analisa yang berarti memberikan evaluasi kinerja suatu algoritma terhadap permasalahan yang diberikan. Dua hal yang digunakan untuk mengukur efektivitas suatu algoritma yaitu kompleksitas ruang (keadaan) dan kompleksitas waktu. Kompleksitas ruang berkaitan dengan sistem memori yang dibutuhkan pada eksekusi program. Kompleksitas waktu dari suatu algoritma berisi ekspresi bilangan dan jumlah langkah yang dibutuhkan sebagai fungsi dari ukuran permasalahan. Analisa asimtotik menghasilkan notasi Ο (Big Oh), ϴ (Big Theta), dan Ω (Big Omega) (Purwanto, 2008).

37 Big Theta Didefinisikan bahwa f(n) merupakan Theta dari g(n) dan dinotasikan f(n) = Θ(g(n)) jika dan hanya jika terdapat tiga konstanta positif n0, c1 dan c2 sedemikian sehingga berlaku c1g(n) f (n) c2g(n) ketika n > n0. Dalam grafik nilai f(n) di sebelah kanan n0 selalu berada di antara c1g(n) dan c2g(n) (Cormen, et al., 2009). Gambar 2.4 Grafik Θ (Cormen, et al., 2009) 2.8 Penelitian yang Relevan Berikut ini beberapa penelitian yang berkaitan dengan kompresi file teks dengan algoritma Even-Rodeh Code: 1. Budiman, M. A. dan Dian Rachmawati On Using Goldbach Go Codes and Even-Rodeh Codes for Text Compression. Departemen Ilmu Komputer, Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Sumatera Utara. Dalam penelitian ini dapat di simpulkan bahwa algoritma Even-Rodeh Code lebih efisien dibandingkan dengan algoritma Goldbach Code, karena dalam segi penghematan memori, bitrate dan ratio compression algoritma Even-Rodeh Code lebih baik daripada algoritma Goldbach Go Codes. 2. Pada penelitian yang berjudul Perbandingan Algoritma Even-Rodeh Code dan Algoritma Variable Length Binary Encoding (VLBE) pada Kompresi File Teks oleh Ade Rani Abdullah pada tahun dapat disimpulkan bahwa dalam proses kompresi, algoritma Even-Rodeh Code dan algoritma Variable Length Binary Encoding (VLBE) dipengaruhi oleh jumlah variasi karakter. Hasil pengujian kompresi file teks *.rtf dengan karakter yang berbeda (heterogen) berdasarkan variabel Ratio of Compression (Rc), Compression Ratio (Cr),

38 23 Redundancy (Rd) dan waktu kompresi menunjukkan bahwa metode Even- Rodeh Code lebih baik dibandingkan dengan metode Variable Length Binary Encoding (VLBE) dengan Compression Ratio ratarata sebesar %. Hasil pengujian dekompresi file teks dengan karakter yang berbeda metode Even Rodeh Code dan Variable Length Binary Encoding (VLBE) menunjukkan bahwa Even-Rodeh Code memerlukan waktu yang lebih sedikit untuk mengembalikan file teks hasil kompresi ke file teks semula, dengan ratarata milisekon. 3. Penelitian yang berjudul Analisis Perbandingan Algoritma Even-Rodeh Code dan Algoritma Fibonacci Code untuk Kompresi File Teks oleh Mhd. Ali Subada pada tahun 2018 dapat diperoleh bahwa dari hasil pengujian pada aplikasi kompresi file teks dengan karakter yang sama (homogen) berdasarkan Bitrate, Compression Ratio (CR), dan Waktu Dekompresi bahwah algoritma Even-Rodeh Code lebih baik untuk mengembalikan file teks hasil kompresi ke file teks semula, dengan rata-rata 0,004 millisekon.

39 BAB 3 ANALISIS DAN PERANCANGAN SISTEM 3.1. Analisis Sistem Analisis sistem merupakan salah satu tahap pembangunan sistem untuk menentukan proses identifikasi mengenai hal-hal yang akan dibutuhkan dan harus ada pada sistem, agar sistem tersebut dapat berjalan sesuai dengan tujuan utama. Tahapantahapan yang akan dilakukan dalam menganalisis sebuah sistem yaitu: Analisis Masalah Analisis masalah merupakan tahapan pembangunan sistem untuk menentukan proses identifikasi sebab dan akibat dibuatnya sebuah sistem yang dapat berjalan agar sistem tersebut dapat berjalan sesuai dengan tujuan utama sistem dibangun. Permasalahan yang akan di angkat dari penelitian ini yaitu membandingkan algoritma Boldi-Vigna ζ1 Code dan Even-Rodeh Code untuk mengetahui algoritma kompresi terbaik diantara kedua algoritma tersebut. Diagram Ishikawa digunakan untuk memaparkan identifikasi masalah dengan menunjukkan sebab-sebab terjadinya suatu masalah. Analisis masalah ini akan lebih jelas melalui diagram Ishikawa yang dapat dilihat pada Gambar 3.1.

40 25 Material Manusia File teks (.txt) berukuran besar Sulit menemukan algoritma yang efisien dalam kompresi file teks Metode Kebiasaan menyimpan data yang tidak diperlukan Tidak puas dengan waktu transfer data yang lama Belum ada aplikasi kompresi yang menggunakan algoritma Boldi- Vigna ζ 1 Code dan Even-Rodeh Code Mesin Memperkecil ukuran file teks dengan Boldi- Vigna ζ 1 Code dan Even-Rodeh Code Gambar 3.1 Diagram Ishikawa Analisis Masalah Pada Gambar Diagram 3.1 dapat dilihat bahwa terdapat empat kategori penyebab masalah pada penelitian Analisis Perbandingan Algoritma Even-Rodeh Code dan Algoritma Boldi-Vigna ζ1 Code Untuk Kompresi File Teks yang digambarkan dengan tanda panah yang mengarah ke panah utama, yaitu saling berhubungan dengan Material, Metode, Manusia, dan Sistem. Setiap detail penyebab masalah tersebut digambarkan dengan tanda panah yang mengarah pada masing-masing kategori Analisis Kebutuhan Analisis kebutuhan sistem terdiri dari dua jenis kebutuhan, yaitu kebutuhan fungsional dan non-fungsional. Kebutuhan fungsional sistem membahas tentang fungsifungsi yang harus ada pada sistem yang dirancang. Sedangkan kebutuhan nonfungsional membahas tentang fungsi-fungsi yang berperan sebagai pelengkap sistem agar mendapat feedback dari pengguna. a. Kebutuhan Fungsional Kebutuhan fungsional yang harus terdapat pada sistem yang dirancang meliputi beberapa hal di antaranya: 1. Sistem dapat membaca string yang ada pada file teks berekstensi.txt.

41 26 2. Sistem dapat melakukan proses kompresi maupun dekompresi dengan menggunakan algoritma Boldi-Vigna ζ1 Code dan Even-Rodeh Code pada file teks. 3. Sistem dapat menghitung Compression Ratio (CR), Space Saving (SS), bit rate serta size bit, waktu kompresi dan dekompresi data. b. Kebutuhan non - fungsional Kebutuhan non-fungsional yang harus dimiliki oleh sistem yang dirancang adalah sebagai berikut : 1. Performa Sistem dapat melakukan proses kompresi dan dekompresi file teks dengan jarak waktu yang sedikit. 2. Minimalis Sistem yang dibangun harus dirancang dengan tampilan yang sederhana agar mudah digunakan oleh pengguna. 3. Informasi Sistem menyediakan informasi yang berkaitan dengan data file yang akan atau telah dikompresi oleh sistem. 4. Kualitas Sistem yang dibangun harus mampu memberikan hasil kompresi dan dekompresi yang tepat dan akurat, serta menjamin integritas data 5. Dokumentasi Sistem dapat menyimpan file hasil proses kompres maupun hasil dekompresi Pemodelan Sistem Pemodelan sistem merupakan tahapan yang mengambarkan komponenkomponen dari sistem yang akan dibangun sesuai dengan kebutuhan sistem. Dalam sistem ini terdapat dua proses utama yaitu proses kompresi dan proses dekompresi dengan menggunakan metode Even-Rodeh Code dan Boldi-Vigna ζ1 Code. Permodelan sistem akan digambarkan dengan menggunakan use case diagram, activity diagram dan sequence diagram.

42 Use Case Diagram Use Case Diagram adalah metode untuk merangkum persyaratan fungsional sebuah sisitem. Use case memaparkan interaksi antara para pengguan sistem dengan sistem tersebut, dengan menampilkan gambaran bagaimana sistem itu digunakan. Dalam usecase, para pengguna disebut sebagai aktor. Aktor merupakan peran yang dimainkan seseorang dalam kaitannya dengan sistem. Use case diagram menampilkan aktor, use case, dan hubungan atar keduanya. Use case diagram dari sistem dipaparkan pada Gambar Gambar 3.2 Use Case Diagram Pada Sistem Use Case Diagram pada Gambar 3.2 menjelaskan bahwa sistem dapat di akses oleh seorang pengguna (aktor) dimana pengguna tersebut dapat melakukan kompresi maupun dekompresi dengan dua algoritma yang digunakan, yaitu algoritma Boldi- Vigna ζ1 Code dan Even-Rodeh Code. Hal pertama yang dilakukan ketika melakukan kompresi yaitu memilih file yang ingin dikompresikan. Lalu memilih algoritma apa yang akan digunakan pada proses kompresi. Saat proses kompresi berlangsung, file hasil kompresi secara otomatis tersimpan. pengguna juga dapat mereset sistem. Begitu juga untuk melakukan dekompresi, memilih file yang terkompresi terlebih dahulu dengan membuka file berekstensi *.bvc *.erc, kemudian proses dekompresi dilakukan baik menggunakan algoritma Boldi-Vigna ζ1 Code dan Even-

43 28 Rodeh Code. Setelah itu user dapat menyimpan file hasil dekompresi atau melakukan reset terhadap sistem Activity diagram pada proses kompresi Boldi-Vigna ζ1 Code Activity diagram ini merupakan gambaran proses kompres algoritma Boldi- Vigna ζ1 Code yang berjalan pada sistem dapat di gambarkan pada activity diagram pada Gambar 3.3. Gambar 3. 3 Activity Diagram proses Kompresi Boldi-Vigna ζ1 Code

44 Activity diagram pada proses kompresi Even-Rodeh Code Activity diagram ini merupakan gambaran proses kompresi algoritma Even- Rodeh Code yang berjalan pada sistem dapat di gambarkan pada activity diagram pada Gambar 3.4. Gambar 3. 4 Activity Diagram proses Kompresi Even-Rodeh Code Diagram diatas memaparkan interaksi aktifitas antara pengguna sistem secara terstruktur. Pada Gambar 3.3 kotak paling kiri merupakan aktifitas yang dilakukan oleh

45 30 pengguna, sedangkan kotak sebelah kanan adalah respon yang diberikan sistem terhadap aktifitas yang dilakukan pengguna terhadap sistem Sequence Diagram Sequence diagram merupakan gambaran mengenai interaksi antar objek melalui pesan dalam bentuk eksekusi dimana interaksi tersebut disusun berdasarkan urutan waktu. Sequence diagram untuk sistem ini dapat dilihat pada gambar seperti berikut. 1. Sequence diagram proses kompresi yang terdapat pada sistem dapat dilihat pada gambar 3.5. Gambar 3.5 Sequence diagram proses kompresi

46 31 2. Sequence diagram proses dekompresi yang terdapat pada sistem dapat dilihat pada gambar 3.6. Gambar 3.6 Sequence diagram proses dekompresi 3.3. Pseudocode Pseudocode adalah kode yang menyerupai program yang dapat menjelaskan cara bagaimana menyelesaikan suatu masalah. Pseudocode mudah dipahami karena kodekodenya mirip dengan program sebenarnya, sehingga sering digunakan untuk menuliskan suatu algoritma.

47 Pseudocode Algoritma Boldi-Vigna ζ1 Code Function BoldiVignaCodes(n) int k 1 int h 0 int hmax Math.Pow(2, (h + 1) * k) 1 while (n > hmax) do h h + 1 hmax Math.Pow(2, (h + 1) * k) 1 end while string unary "1".PadLeft(h + 1, '0') int minbincodeorx n - Math.Pow(2, h * k) int z Math.Pow(2, (h + 1) * k) - Math.Pow(2, h * k) int s Math.Ceiling(Math.Log(z,2) int encodevalue minbincodeorx string encodebin if minbincodeorx >= Math.Pow(2, s) z encodevalue Math.Abs(Math.Abs(minBinCodeorX - z) - Math.Pow(2, s)) encodebin DecToBin(encodedValue).PadLeft(s,'0').Substrin g(0,s) else encodebin DecToBin(encodedValue).PadLeft(s - 1, '0').Substring(0, s-1) return unary+""+encodebin Pseudocode Algoritma Even-Rodeh Code Function EvenRodehCodes(n) if n<4 c DecToBin(n) int lc c.length for i 0 to 3 lc do code.append( 0 ) end for code.append( c ) else if (n >= 4 && n < 8) c DecToBin(n) code.append( c ) code.append( 0 ) else c DecToBin(n) code.append(dectobin(c.length)) code.append( c ) code.append( 0 ) return code

48 Flowchart Flowchart sistem secara umum Perancangan sistem secara umum digambarkan dengan flowchart seperti pada gambar 3.7. b. Flowchart Proses Dekompresi a. Flowchart Proses Kompresi Gambar 3.7 Flowchart Sistem Secara Umum

49 Flowchart Algoritma Boldi-Vigna ζ1 Code Berikut Flowchart kompresi dengan algoritma Boldi-Vigna ζ1 Code seperti yang terlihat pada gambar 3.8. Mulai hmax = (2^(h+1)*k)-1 h = 0 k = 1 Masukkan n n > hmax tidak unary = 1.Padleft(h+1, 0') ya h = h + 1 minbincodeorx = n -2^(h*k) hmax = (2^(h+1)*k)-1 z = 2^ (h + 1) * k) 2^( h * k) s = encodebin = minbincodeorx >= (2 ^ s) - z ya encodevalue = (minbincodeorx - z) (2 ^ s)) tidak encodebin = DecToBin(encodeValue).PadL eft(s - 1, '0').Substring(0, s-1); encodebin = DecToBin(encodeValue).PadL eft(s, '0').Substring(0,s) bvc = unary+""+encodebin Selesai Gambar 3.8 Flowchart algoritma Boldi-Vigna ζ1 Code

50 Flowchart Algoritma Even-Rodeh Code Berikut Flowchart kompresi dengan algoritma Even-Rodeh Code seperti yang terlihat pada gambar 3.9.

51 36 Mulai Masukkan nilai n c = DecToBin(n) tidak n >=4 && n < 8 tidak n < 4 ya ya lc = len (c) c = DecToBin(n) c = DecToBin(n) lnbin = DecToBin(lc) erc = c + 0 lc = len (c) erc = lnbin + c + 0 i = 0 erc = erc + c tidak i < 3 - lc ya erc = erc + 0 erc i ++ Selesai Gambar 3. 9 Flowchart algoritma Even-Rodeh Code 3.5. Perancangan Antarmuka Perancangan antaramuka sistem berperan penting dalam mendukung kualitas pembangunan suatu sistem. Perancangan antarmuka sistem dapat memberikan

52 37 pengaruh penting antara pengguna dan sistem dalam berkomunikasi. Sistem yang memiliki perancangan antarmuka yang sulit di mengerti oleh pengguna, maka memungkinkan pengguna melakukan kesalahan pada saat menjalankan sistem. Oleh sebab itu diperlukan perancangan antarmuka yang efisien, sederhana dan menarik sehingga mudah dimengerti dan dijalankan oleh pengguna Halaman Home Halaman Home merupakan tampilan pertama kali yang muncul ketika sistem dijalankan. Halaman home menjelaskan secara singkat bagian-bagian sistem dan bagaimana sistem itu dibangun Halaman ini berisi nama sistem, nama pembuat sistem, nama institusi, serta menu yang disediakan oleh sistem. Masing-masing menu dengan design tampilannya menunjukkan fungsinya masing-masing dan memberikan akses secara langsung kepada pengguna. Rancangan halaman home pada aplikasi dapat dilihat pada gambar Gambar 3.10 Rancangan Halaman Utama Komponen yang digunakan untuk perancangan interface halaman utama form Home berdasarkan Gambar adalah sebagai berikut: 1. Tool Strip Menu : digunakan untuk memilih menu Home 2. Tool Strip Menu : digunakan untuk memilih menu Compression 3. Tool Strip Menu : digunakan untuk memilih menu Decompression

53 38 4. Tool Strip Menu : digunakan untuk memilih menu Help 5. Tool Strip Menu : digunakan untuk memilih menu About 6. Label : berisi judul sistem 7. PictureBox : berisi logo institusi 8. Label : berisi nama pembuat sistem Form Compression Pada form compression terdapat button untuk memilih file yang akan dikompresi, richtextbox untuk isi file yang akan dikompresi, string bit sebelum dan setelah dikompresi, data hasil kompresi dan reset. Rancangan interface form compression pada aplikasi dapat dilihat pada Gambar Gambar 3.11 Form Compression pada sistem Komponen yang digunakan untuk perancangan interface form Compression berdasarkan Gambar adalah sebagai berikut: 1. Tool Strip Menu : digunakan untuk memilih menu Home 2. Tool Strip Menu : digunakan untuk memilih menu Compression 3. Tool Strip Menu : digunakan untuk memilih menu Decompression 4. Tool Strip Menu : digunakan untuk memilih menu Help 5. Tool Strip Menu : digunakan untuk memilih menu About

54 39 6. Button : button untuk memilih file 7. TextBox : informasi alamat/path file yang dipilih pada device 8. TextBox : informasi mengenai total bit sebelum dikompresi 9. RadioButton :menjalankan proses kompresi dengan Boldi-Vigna Code 10. RadioButton :menjalankan proses kompresi dengan Even-Rodeh Code 11. Button : melakukan proses kompresi 12. Button : mengatur ulang proses kompresi 13. RichTextBox : berisi string bit setelah dikompresi 14. TextBox :menampilkan informasi total size bit setelah dikompresi 15. RichTextBox : berisi string bit dari teks yang dipilih 16. TextBox : informasi nilai compression ratio 17. TextBox : informasi nilai bit rate 18. TextBox : informasi nilai space saving 19. TextBox : informasi mengenai waktu kompresi 20. RichTextBox : berisi teks dari file yang dipilih Form Decompression Pada Form Dekompresi terdapat button yang berguna dalam mengeksekusi file yang telah dikompresi. Form Dekompresi pada aplikasi dapat dilihat pada Gambar 3.12.

55 40 Gambar 3.12 Form Decompression pada Sistem Komponen yang digunakan untuk perancangan interface Halaman Dekompresi berdasarkan Gambar adalah sebagai berikut: berfungsi untuk menampilkan tampilan Beranda dari sistem yang ada. 1. Tool Strip Menu : digunakan untuk memilih menu Home 2. Tool Strip Menu : digunakan untuk memilih menu Compression 3. Tool Strip Menu : digunakan untuk memilih menu Decompression 4. Tool Strip Menu : digunakan untuk memilih menu Help 5. Tool Strip Menu : digunakan untuk memilih menu About 6. Button : button untuk memilih file 7. TextBox : informasi alamat/path file yang dipilih pada device 8. TextBox :menampilkan informasi total size bit setelah dikompresi 9. RichTextBox : berisi string bit setelah dikompresi 10. Button : melakukan proses dekompresi 11. Button : mengatur ulang proses dekompresi 12. RichTextBox : berisi teks dari file hasil dekompresi 13. TextBox : informasi mengenai total bit setelah proses dekompresi 14. Button : menyimpan file hasil dekompresi

56 Form Help Berisikan keterangan yang dapat membantu user dalam mengoperasikan sistem yang ada Form. Bantuan pada aplikasi dapat dilihat pada Gambar Gambar 3.13 Form Help pada Sistem Komponen yang digunakan untuk perancangan interface Halaman Bantuan berdasarkan Gambar adalah sebagai berikut: 1. Tool Strip Menu : digunakan untuk memilih menu Home 2. Tool Strip Menu : digunakan untuk memilih menu Compression 3. Tool Strip Menu : digunakan untuk memilih menu Decompression 4. Tool Strip Menu : digunakan untuk memilih menu Help 5. Tool Strip Menu : digunakan untuk memilih menu About 6. Label :menampilkan teks keterangan bantuan untuk menu Compression dan Decompression 7. TextBox :menampilkan teks mengenai keterangan dalam menggunakan menu Kompresi dan Dekompresi yang ada pada sistem.

57 Form About Berisikan informasi mengenai informasi pembuatan di dalam sistem. Form Tentang pada aplikasi dapat dilihat pada Gambar Gambar 3.14 Form About pada Sistem Komponen yang digunakan untuk perancangan interface Halaman Tentang berdasarkan Gambar adalah sebagai berikut: 1. Tool Strip Menu : digunakan untuk memilih menu Home 2. Tool Strip Menu : digunakan untuk memilih menu Compression 3. Tool Strip Menu : digunakan untuk memilih menu Decompression 4. Tool Strip Menu : digunakan untuk memilih menu Help 5. Tool Strip Menu : digunakan untuk memilih menu About 6. Label : berfungsi untuk menampilkan teks berisi judul dari sistem yang telah dibuat. 7. Group Box : berfungsi untuk mengelompokkan Button dan TextBox dalam sistem. 8. Label : berfungsi untuk menampilkan teks berisi judul dari sistem yang telah dibuat.

58 BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM 4.1. Implementasi Algoritma Implementasi Algoritma Boldi-Vigna ζ1 Code Proses analisis kompresi file teks dengan menggunakan algoritma Boldi-Vigna ζ1 Code. Di bawah ini adalah contoh proses kompresi file teks dengan menggunakan algoritma Boldi-Vigna ζ1 Code. Terdapat file teks yang berisikan string KUTU BUKU BACA BUKU KALKULUS. Dapat dilihat pada Tabel 4.1 untuk mengukur string itu di dalam komputer. Tabel 4.1 Ukuran String Sebelum Dikompresi Karakter ASCII ASCII Code Freq Bit Freq*Bit Code (Binary) K U T Sp B A C L S Jumlah Bit 224 Bit

59 44 Berdasarkan kode ASCII, satu karakter bernilai delapan bit bilangan biner. Sehingga 28 karakter pada string mempunyai nilai biner sebanyak 224 bit. Sebelum melakukan proses kompresi, karakter terlebih dahulu diurutkan dari frekuensi terbesar ke yang terkecil. Proses kompresi untuk algoritma Boldi-Vigna ζ1 Code dapat dilihat pada tabel 4.2. Tabel 4.2 Ukuran String Setelah Dikompresi Dengan Boldi-Vigna ζ1 Code N Σ Freq Boldi-Vigna ζ1 Code Bit Freq*Bit 1 U K Sp B A L T C S Jumlah Bit 94 Bit Berdasarkan tabel diatas, maka didapat string bit sebelum dikompresi yaitu dengan uraian sebagai berikut: K U T U Sp

60 45 B U K U Sp B A C A Sp B U K U Sp K A L K U L U S Sebelum ditulis ke sebuah file hasil kompresi dilakukan penambahan bit-bit padding dan flag bits diawal dan diakhir string bit sehingga panjang string bit bisa habis dibagi delapan. Karena jumlah string adalah 94 bit, tentu tidak habis dibagi delapan dan sisanya adalah 6. Sehingga dibutuhkan bit 0 sebanyak 2 kali, maka padding adalah 00 dan flag bits-nya adalah bilangan biner dari 4 yaitu Diperoleh: String bit hasil kompresi = Total bit seluruhnya adalah penambahan padding dan flag adalah = 104. Dari hasil kompresi dengan algoritma Boldi-Vigna ζ1 Code di atas dapat dihitung kinerja kompresinya yaitu :

61 46 a. Compression Ratio C R = C R = ukuran data setelah dikompresi ukuran data sebelum dikompresi C R = 0,4643 b. Bitrate Bitrate = Bitrate = ukuran data setelah dikompresi jumlah h karakter unik teks Bitrate = 11 bits symbol c. Space Savings (SS) ukuran data sebelum dikompresi ukuran data setelah dikompresi SS = ( ) 100% ukuran data sebelum dikompresi SS = ( ) 100% 224 SS = 53.57% Implementasi Algoritma Even-Rodeh Code Proses analisis kompresi file teks dengan menggunakan algoritma Even-Rodeh Code. Di bawah ini adalah contoh proses kompresi file teks dengan menggunakan algoritma Even-Rodeh Code. Terdapat file teks yang berisikan string KUTU BUKU BACA BUKU KALKULUS. Dapat dilihat pada Tabel 4.1. untuk mengukur string itu di dalam komputer. Berdasarkan kode ASCII, satu karakter bernilai delapan bit bilangan biner. Sehingga 28 karakter pada string mempunyai nilai biner sebanyak 224 bit. Sebelum melakukan proses kompresi, karakter terlebih dahulu diurutkan dari frekuensi terbesar ke yang terkecil. Proses kompresi untuk algoritma Even-Rodeh Code dapat dilihat pada tabel 4.3.

62 47 Tabel 4.3 Ukuran String Setelah Dikompresi Dengan Even-Rodeh Code N Σ Freq Even-Rodeh Code Bit Freq*Bit 0 U K Sp B A L T C S Jumlah Bit 96 Bit Berdasarkan tabel diatas, maka didapat string bit sebelum dikompresi yaitu dengan uraian sebagai berikut: K U T U Sp B U K U Sp B A C A Sp

63 48 B U K U Sp K A L K U L U S Sebelum ditulis ke sebuah file hasil kompresi dilakukan penambahan bit-bit padding dan flag bits diawal dan diakhir string bit sehingga panjang string bit bisa habis dibagi delapan. Karena jumlah string adalah 96 bit, tentu habis dibagi delapan. Sehingga tidak diperlukan untuk menambahkan padding bit 0 dan flag bits-nya adalah bilangan biner dari 0 yaitu Diperoleh: String bit hasil kompresi = Total bit seluruhnya adalah penambahan padding dan flag adalah 96+8 = 104. Dari hasil kompresi dengan algoritma Even-Rodeh Code di atas dapat dihitung kinerja kompresinya yaitu : a. Compression Ratio C R = C R = ukuran data setelah dikompresi ukuran data sebelum dikompresi C R = 0,4643

64 49 b. Bitrate Bitrate = Bitrate = ukuran data setelah dikompresi jumlah h karakter unik teks Bitrate = 11 bits symbol c. Space Savings (SS) 100% ukuran data sebelum dikompresi ukuran data setelah dikompresi SS = ( ) 100% ukuran data sebelum dikompresi SS = ( ) 100% 224 SS = 53.57% 4.2. Implementasi Sistem Pada tahap ini sistem dibangun menggunakan bahasa pemrograman C# dan menggunakan aplikasi Sharp Develop 5.1, pada proses membangun sistem ini akan dibagi lima form dalam bahasa C# di antaranya ada form Beranda, Tab Kompresi, Tab Dekompresi, Tab Bantuan dan Tab Tentang Form Home Form home adalah tampilan pertama kali muncul saat aplikasi dijalankan. Form home dapat dilihat pada Gambar 4.1. Gambar 4.1 Tampilan Halaman Awal Form Home

65 Form Compression Form compression adalah Tab yang menampilkan proses kompresi. Tampilan form compression dapat dilihat pada Gambar 4.2. Ada beberapa fungsi dari interface form compression di bawah ini : 1. Button Open berfungsi untuk memanggil atau menampilkan lokasi file yang akan di kompresi. 2. Text Box merupakan informasi tempat pengambilan dari file yang akan dikompresi. 3. Rich Text Box untuk menampilkan isi file yang telah di panggil dari direktori. 4. Group Box digunakan untuk mengelompokkan Rich Text Box yang berfungsi untuk menampilkan file teks yang telah dipanggil. 5. Button Kompresi berfungsi sebagai tombol perintah untuk mengkompresi file text. 6. Radio Button digunakan untuk menentukan inputan metode atau algoritma apa yang akan digunakan. 7. Group Box informasi digunakan untuk mengelompokkan setiap Label dan Text Box yang berfungsi untuk menampilkan hasil dari Compression Ratio (CR), Bitrate, Space Saving dan Waktu Kompresi pada saat proses kompresi bejalan. 8. Tombol Button Reset berfungsi untuk menghapus hasil dari tampilan file teks yang telah dipanggil, menghapus karakter unik dari hasil kompresi, menghapus informasi parameter tanpa menghapus file terkompresi yang sudah disimpan.

66 51 Gambar 4.2 Tampilan Form Compression Form Decompression Form Decompression adalah form yang digunakan untuk melakukan proses dekompresi. Tampilan form decompression dapat dilihat pada Gambar 4.3. Ada beberapa fungsi interface di form decompression dibawah ini: 1. Tombol Button open berfungsi untuk memanggil atau menampilkan lokasi file yang sudah dikompresi. 2. Group Box Hasil digunakan untuk mengelompokkan Rich Text Box yang berfungsi untuk menampilkan simbol unik hasil dari kompresi. 3. Tombol Button decompress adalah tombol perintah untuk mendekompresi file teks (simbol unik) yang sudah dikompresi terlebih dahulu, sehingga yang muncul tidak lagi simbol unik melainkan file teks sebelum dikompresi. 4. Group Box Informasi digunakan untuk mengelompokkan setiap Label, Rich Text Box, dan Text Box yang berfungsi untuk menampilkan waktu dan hasil dari dekompresi. 5. Tombol Button Reset berfungsi untuk menghapus hasil dari tampilan file teks yang telah dipanggil, menghapus karakter unik dari hasil kompresi, menghapus informasi waktu dan hasil dekompresi.

67 52 Gambar 4.3 Tampilan Form Decompression Form Help yang dibuat Form Help berfungsi sebagai informasi tentang cara pengoperasian sistem Gambar 4.4 Tampilan Form Help

68 Form About Form About adalah form yang digunakan hanya untuk menampilkan informasi sistem yang dibuat dan informasi tentang penulis. Gambar 4.5 Tampilan Form About 4.3. Pengujian Sistem Tahap ini merupakan proses mengidentifikasi hasil dari implementasi sistem apakah sistem telah berjalan sesuai dengan fungsi yang sebelumnya telah ditentukan pada tahap analisis dan perancangan sistem. Tahap pengujian sistem ini dilakukan pada file teks dengan format *.txt. Proses utama dari sistem ini adalah proses pengujian kompresi dan proses pengujian dekompresi Pengujian Proses Kompresi Tahap awal untuk melakukan proses kompresi adalalah menekan Tab Kompresi. Ketika tampilan form kompresi muncul selanjutnya lakukan langkahlangkah berikut ini untuk melakukan kompresi : 1. Klik tombol Buka untuk membuka File Dialog, dan pilih file teks (*.txt) sebagai file yang akan dikompresi. 2. Setelah dipilih file yang akan dikompresi, isi file yang dipilih akan muncul di Rich Text Box yang berada di dalam Group Box File Teks.

69 54 3. Klik tombol Compress untuk melakukan proses kompresi, otomatis akan ditampilkan jumlah bit awal sebelum terkompresi, jumlah bit terkompresi, dari Algoritma Boldi-Vigna ζ1 Code dan Algoritma Even-Rodeh Code yang akan muncul di Text Box. 4. Klik tombol Reset apabila user akan mengulangi proses kompresi, dan tampilan data hasil file yang telah terkompresi akan terhapus. Gambar 4.6 Tampilan Proses Kompresi Dari Gambar 4.6. Pada saat proses kompresi, akan ditampilkan secara otomatis jumlah bit awal sebelum terkompresi, jumlah bit terkompresi dan parameter dari Algoritma Even-Rodeh Code dan Algoritma Boldi-Vigna ζ1 Code yang akan muncul di Text Box.

70 55 Gambar 4.7 Tampilan Kotak Dialog Save File Pada Proses Kompresi Gambar 4.7 adalah kotak dialog untuk menentukan direktori dan menyimpan file yang telah terkompresi. Gambar 4. 8 Proses Kompresi Setelah Di Atur Ulang Gambar 4.8 adalah form untuk mengulangi proses kompresi, apabila user mengklik tomol atur ulang maka semua hasil kompresi yang di tampilkan pada Gambar 4.7 akan terhapus.

71 Pengujian Proses Dekompresi Tahap awal untuk melakukan proses dekompresi adalah menekan Tab Dekompresi. Ketika tampilan form Dekompresi muncul, selanjutnya lakukan langkahlangkah berikut ini untuk melakukan proses dekompresi : 1. Klik tombol Buka untuk menampilkan lokasi kotak dialog, dan pilih file hasil kompresi (*.bvc atau *.erc) sebagai masukan. Setelah dipilih file hasil kompresi, akan muncul hasil kompresi di Rich Text Box. 2. Klik tombol Dekompresi untuk melakukan proses dekompresi. Klik tombol Buka untuk menampilkan lokasi kotak dialog, dan pilih file hasil kompresi (*.bvc atau *.erc) sebagai masukan. Setelah dipilih file hasil kompresi, akan muncul hasil kompresi di Rich Text Box di dalam Group Box Hasil Kompresi. Gambar 4. 9 Tampilan Menu Dekompresi

72 57 Gambar 4.10 Tampilan Kotak Dialog Save File Pada Proses Dekompresi Gambar 4.10 adalah kotak dialog untuk menentukan direktori dan menyimpan file yang telah didekompresi. Gambar 4.11 Proses Dekompresi Gambar 4.11 adalah tampilan proses dekompresi dari file hasil kompresi dari file teks yang telah kita pilih sebelumnya..

73 Hasil Pengujian Dari hasil pengujian penelitian ini adalah proses kompresi dan dekompresi yang telah dilakukan terhadap string dengan dua jenis yang berbeda, yaitu string dengan karakter yang sama (String Homogen) dan string yang terdiri dari beberapa jenis karakter yang berbeda (String Heterogen). File yang akan digunakan untuk String Heterogen dan String Homogen terdapat pada Tabel 4.4 dan Tabel 4.5. Tabel 4.4 File Berisi String Homogen Frekuensi Karakter String Homogen 1 G 10 GGGGGGGGGG GGGGGGGGGGGGGGGGGGGGGGGGGGGGG GGGGGGGGG G GGGGGGGGGGGGGGGGGGGGGGGGGGGGG GGGGGGGGGGGGGGGGGGGGGGGGGGGGG GGGGG G GGGGGGGGGGGGGGGGGGGGGGGGGGGGG GGGGGGGGGGGGGGGGGGGGGGGGGGGGG GGGGGGGGGGGGGGGGGGGGGGGGGGGGG GGGGG G

74 59 Tabel 4.5 File Berisi String Heterogen Frekuensi Karakter Jenis Karakter String Heterogen ABCDE ABCDE012345ABCDE012345ABCDE ABCDE012345ABCDE012345ABCDE ABCDE012345ABCDE012345ABCDE ABCDE ABCDE012345ABCDE012345ABCDE ABCDE012345ABCDE012345ABCDE ABCDE012345ABCDE012345ABCDE ABCDE012345ABCDE.ABCDE ABCDE012345ABCDE012345ABCDE ABCDE012345ABCDE012345ABCDE ABCDE012345ABCDE012345ABCDE ABCDE012345ABCDE012345ABCDE ABCDE.ABCDE Pengujian String Homogen Hasil dari uji String Homogen yang dilakukan oleh algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code dapat dilihat pada Tabel 4.6 dan Tabel 4.7.

75 60 Tabel 4.6 Hasil Pengujian String Homogen dengan Boldi-Vigna ζ1 Code String Homogen Boldi-Vigna ζ1 Code Jumlah Jenis Bit Bit Bitrate SS Waktu Waktu Karakter Karakter Sebelum Terkompresi C R (Bits/ Kompresi Dekompresi Kompresi Symbol) (ms) (ms) Rata-Rata Tabel 4.7 Hasil Pengujian String Homogen dengan Even-Rodeh Code String Homogen Even-Rodeh Code Jumlah Karakter Jenis Karakter Bit Sebelum Kompresi Bit Terkompresi C R Bitrate (Bits/ Symbol) SS Waktu Kompresi (ms) Waktu Dekompresi (ms) Rata-Rata

76 61 Dari hasil pengujian Tabel 4.6 dan Tabel 4.7 dapat dibuat grafik perbandingan hasil pengujian String Homogen algoritma Boldi-Vigna ζ1 Code dan algoritma Even- Rodeh Code berdasarkan variabel: Compression Ratio (CR), Bitrate, Space Saving, Waktu Kompresi, dan Waktu Dekompresi seperti pada Gambar 4.12, Gambar 4.13, Gambar 4.14, Gambar 4.15, dan Gambar Grafik Compression Ratio terhadap String Homogen Compression Ratio Panjang String Boldi-Vigna ζ1 Code Even-Rodeh Code Gambar 4.12 Grafik Compression Ratio terhadap String Homogen Dari Gambar Grafik Compression Ratio dapat disimpulkan bahwa algoritma Even-Rodeh Code lebih efisien dalam hal Compression Ratio. Jika algoritma yang memiliki nilai CR lebih besar maka algoritma tersebut lebih baik untuk digunakan dalam proses kompresi file dengan jumlah karakter yang sangat besar dengan string yang sama (homogen).

77 62 Grafik Bitrate terhadap String Homogen Bitrate Panjang String Boldi-Vigna ζ1 Code Even-Rodeh Code Gambar 4.13 Grafik Bitrate terhadap String Homogen Dari Gambar 4.13 Grafik Bitrate dapat disimpulkan bahwa algoritma Boldi-Vigna ζ1 Code lebih efisien dalam segi Bitrate dibandingkan dengan algoritma Even-Rodeh Code. Hal ini dikarenakan nilai Bitrate yang dimiliki oleh algoritma Boldi-Vigna ζ1 Code lebih rendah. 100 Grafik Penghematan Ruang Penyimpanan (Space Savings) terhadap String Homogen 50 Space Savings Panjang String Boldi-Vigna ζ1 Code Even-Rodeh Code Gambar 4.14 Grafik Space Savings terhadap String Homogen

78 63 Dari Gambar Grafik Space Savings dapat disimpulkan bahwah algoritma Boldi-Vigna ζ1 Code lebih baik dan efisien dalam melakukan Space Savings (penghematan ruang) dalam proses kompresi file dengan jumlah karakter yang besar dengan string yang sama (homogen). Grafik Waktu Kompresi terhadap String Homogen Waktu Kompresi Panjang String Boldi-Vigna ζ1 Code Even-Rodeh Code Gambar 4.15 Grafik Waktu Kompresi terhadap String Homogen Dari Gambar Grafik Waktu Kompresi dapat disimpulkan bahwa algoritma Boldi-Vigna ζ1 Code tidak memerlukan waktu yang lebih lama untuk melakukan proses kompresi file. Sedangkan algoritma Even-Rodeh Code memerlukan waktu yang lama untuk melakukan proses kompresi file teks dengan string yang sama (homogen).

79 64 Grafik Waktu Dekompresi terhadap String Homogen Waktu Dekompresi Panjang String Boldi-Vigna ζ1 Code Even-Rodeh Code Gambar 4.16 Grafik Waktu Dekompresi terhadap String Homogen Dari Gambar Grafik Waktu Dekompresi dapat disimpulkan bahwa algoritma Boldi-Vigna ζ1 Code relatif lebih lama sedangkan algoritma Even-Rodeh Code relatif lebih cepat, akan tetapi ke dua algoritma baik dan efisien untuk melakukan kompresi file teks dengan string yang sama (homogen) di karenakan ujung garis grafik kedua algoritma sejajar Pengujian String Heterogen Hasil dari uji String Heterogen yang dilakukan oleh algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code dapat dilihat pada Tabel 4.8 dan Tabel 4.9.

80 65 Tabel 4.8 Hasil Pengujian String Heterogen dengan Boldi-Vigna ζ1 Code String Heterogen Boldi-Vigna ζ1 Code Jumlah Jenis Bit Bit Bitrate SS Waktu Waktu Karakter Karakter Sebelum Terkompresi C R (Bits/ Kompresi Dekompresi Kompresi Symbol) (ms) (ms) Rata-Rata Tabel 4.9 Hasil Pengujian String Heterogen dengan Even-Rodeh Code String Heterogen Even-Rodeh Code Jumlah Karakter Jenis Karakter Bit Sebelum Kompresi Bit Terkompresi C R Bitrate (Bits/ Symbol) SS Waktu Kompresi (ms) Waktu Dekompresi (ms) Rata-Rata

81 66 Dari hasil pengujian Tabel 4.8 dan Tabel 4.9 dapat dibuat grafik perbandingan hasil pengujian String Homogen algoritma Boldi-Vigna ζ1 Code dan algoritma Even- Rodeh Code berdasarkan variabel Compression Ratio (CR), Bitrate, Space Saving, Waktu Kompresi, dan Waktu Dekompresi seperti pada Gambar 4.17, Gambar 4.18, Gambar 4.19, Gambar 4.20 dan Gambar Grafik Compression Ratio terhadap string heterogen Compression Ratio Panjang String Boldi-Vigna ζ1 Code Even-Rodeh Code Gambar 4.17 Grafik Compression Ratio terhadap String Heterogen Dari Gambar Grafik Compression Ratio dapat disimpulkan bahwa algoritma Even-Rodeh Code lebih efisien dalam hal Compression Ratio. Hal ini dikarenakan jika sebuah algoritma yang memiliki nilai CR lebih besar maka algoritma tersebut lebih baik untuk digunakan dalam proses kompresi file dengan jumlah karakter yang sangat besar dengan string yang berbeda (heterogen).

82 67 Grafik Bitrate terhadap String Heterogen Bitrate Panjang String Boldi-Vigna ζ1 Code Even-Rodeh Code Gambar 4.18 Grafik Bitrate terhadap String Heterogen Dari Gambar 4.18 Grafik Bitrate dapat disimpulkan bahwa algoritma Even- Rodeh Code lebih efisien dalam segi Bitrate dibandingkan dengan algoritma Boldi- Vigna ζ1 Code. Dikarenakan nilai Bitrate yang dimiliki oleh algoritma Even-Rodeh Code lebih rendah dalam proses kompresi file dengan jumlah karakter yang sangat besar dengan string yang berbeda (heterogen). 100 Grafik Penghematan Ruang Penyimpanan (Space Savings) terhadap String Heterogen 50 Space Savings Panjang String Boldi-Vigna ζ1 Code Even-Rodeh Code Gambar 4.19 Grafik Space Savings terhadap String Heterogen

83 68 Dari Gambar Grafik Space Saving dapat disimpulkan bahwah algoritma Boldi- Vigna ζ1 Code lebih baik dan efisien dalam melakukan Space Saving (penghematan ruang) dalam proses kompresi file dengan jumlah karakter yang besar dengan string yang berbeda (heterogen) jika dibandingkan dengan algoritma Even-Rodeh Code. Waktu Kompresi Grafik Waktu Kompresi terhadap String Heterogen Panjang String Boldi-Vigna ζ1 Code Even-Rodeh Code Gambar 4.20 Grafik Waktu Kompresi terhadap String Heterogen Dari Gambar Grafik Waktu Kompresi dapat disimpulkan bahwa algoritma Boldi-Vigna ζ1 Code tidak memerlukan waktu yang lebih lama untuk melakukan proses kompresi file. Sedangkan algoritma Even-Rodeh Code memerlukan waktu yang lebih lama untuk melakukan proses kompresi file teks dengan string yang berbeda (heterogen).

84 69 Grafik Waktu Dekompresi terhadap String Heterogen Waktu Dekompresi Panjang String Boldi-Vigna ζ1 Code Even-Rodeh Code Gambar 4.21 Grafik Waktu Dekompresi terhadap String Heterogen Dari Gambar Grafik Waktu Dekompresi dapat disimpulkan bahwa algoritma Boldi-Vigna ζ1 Code tidak memerlukan waktu yang lebih lama untuk melakukan proses kompresi file. Sedangkan algoritma Even-Rodeh Code memerlukan waktu yang lebih lama untuk melakukan proses dekompresi file teks dengan string yang berbeda (heterogen) Pengujian Corpus Pengujian sistem ini juga dilakukan terhadapa file Corpus. Dimana file Corpus yang digunakan ialah Artificial Corpus. Artificial Corpus berisi file yang dikembangkan khusus untuk pengujian kinerja algoritma kompresi berdasarkan kemampuannya untuk merepresentasikan hasil kinerja algoritma kompresi. Artificial Corpus terdiri dari empat file uji. Isi dari keempat file uji dipaparkan pada Tabel Tabel 4.10 File Uji Artificial Corpus File Isi file Frek Karakter Keterangan a.txt a 1 Huruf a aaa.txt aaa Huruf a yang diulang alphabet.txt alphabet Alphabet yang diulang random.txt Karater acak karakter random

85 70 Hasil pengujian Boldi-Vigna ζ1 Code dan Even-Rodeh Code terhadap Artificial Corpus dipaparkan pada Tabel 4.11 dan Tabel Tabel 4.11 Hasil Pengujian Boldi-Vigna ζ1 Code terhadap File Artificial Corpus Artificial Corpus Boldi-Vigna ζ1 Code Jumlah File Bit Bit C R Bitrate SS Waktu Waktu Karakter Sebelum Terkompresi (%) (Bits/ Kompresi Dekompresi Kompresi Symbol) (ms) (ms) 1 a.txt aaa.txt alphabet.txt random.txt Rata-Rata Tabel 4.12 Hasil Pengujian Even-Rodeh Code terhadap File Artificial Corpus Artificial Corpus Even-Rodeh Code Jumlah Karakter File Bit Sebelum Kompresi Bit Terkompresi C R (%) Bitrate (Bits/ Symbol) SS Waktu Kompresi (ms) Waktu Dekompresi (ms) 1 a.txt aaa.txt alphabet.txt random.txt Rata-Rata

86 Kompleksitas Algoritma Kompleksitas algoritma dari algoritma Boldi-Vigna ζ1 Code dan Even-Rodeh Code yang akan diuji dan dijelaskan pada Tabel 4.13 dan Tabel 4.14 berikut : Tabel 4.13 Kompleksitas Algoritma Boldi-Vigna ζ1 Code Pseudocode Algoritma C # C.# Function BoldiVignaCodes(n) k 1 C1 1 C1 h 0 C1 1 C1 hmax Math.Pow(2, (h + 1) * k) 1 C1 1 C1 while (n > hmax) do C2 n C2n h h + 1 C1 n C1n hmax Math.Pow(2, (h + 1) * k) 1 C1 n C1n end while unary "1".PadLeft(h + 1, '0') C1 1 C1 minbincodeorx n - Math.Pow(2, h * k) C1 1 C1 z Math.Pow(2, (h + 1) * k) -Math.Pow(2, h * k) C1 1 C1 s Math.Ceiling(Math.Log(z,2) C1 1 C1 encodevalue minbincodeorx C1 1 C1 encodebin C1 1 C1

87 72 Pseudocode Algoritma C # C.# if minbincodeorx >= Math.Pow(2, s) z C3 1 C3 encodevalue Math.Abs(Math.Abs (minbincodeorx - z) - Math.Pow(2, s)) C1 1 C1 encodebin DecToBin(encodedValue). PadLeft(s,'0').Substring(0,s) C1 1 C1 Else C3 1 C3 encodebin DecToBin(encodedValue).PadLeft(s 1, '0').Substring(0, s-1) C1 1 C1 return unary+""+encodebin C4 1 C4 Berdasarkan data pada Tabel 4.13, nilai kompleksitas algoritma Boldi-Vigna ζ1 Code dapat dihitung sebagai berikut. T(n) = ( Ci. #i ) = 12C1 + 2C1n + C2n + C3 + C4 = 12C1 + (2C1 + C2)n + C3 + C4 = θ (n)

88 73 Tabel 4.14 Kompleksitas Algoritma Even-Rodeh Code Pseudocode Algoritma C # C.# Function EvenRodehCodes(n) if n < 4 C1 1 C1 c DecToBin(n) C2 1 C2 int lc c.length C2 1 C2 for i 0 to 3 lc do C3 n C3n code.append( 0 ) C4 n C4n end for code.append( c ) C4 1 C4 else if (n >= 4 && n < 8) C1 1 C1 c DecToBin(n) C2 1 C2 code.append( c ) C4 1 C4 code.append( 0 ) C4 1 C4 else C1 1 C1 c DecToBin(n) C2 1 C1 code.append(dectobin(c.length)) C4 1 C4 code.append( c ) C4 1 C4 code.append( 0 ) C4 1 C4 return code C5 1 C5

89 74 Berdasarkan data pada Tabel 4.14, nilai kompleksitas algoritma Even-Rodeh Code dapat dihitung sebagai berikut. T(n) = ( Ci. #i ) = 3C1 + 4C2 + C3n + C4n + 6C4 + C5 = 3C1 + 4C2 + (C3 + C4)n + 6C4 + C5 = θ (n)

90 BAB 5 KESIMPULAN DAN SARAN 5.1. Kesimpulan Berdasarkan hasil dari pengujian yang dilakukan pada penelitian ini, diperoleh beberapa kesimpulan yang berkaitan dengan perbandingan kinerja kompresi dari algoritma Boldi- Vigna ζ1 Code dan algoritma Even-Rodeh Code. Di antaranya sebagai berikut: 1. Pada pengujian kompresi file teks yang berisi string homogen algoritma Boldi- Vigna ζ1 Code memilki kinerja yang lebih baik dibandingkan Even-Rodeh Code karena memilki nilai space savings yang lebih tinggi, bit rate yang lebih kecil serta waktu kompresi yang lebih cepat. 2. Dilihat dari nilai compression ratio yang diperoleh dari pengujian terhadap string homogen dan heterogen diketahui bahwa compression ratio algoritma Even-Rodeh Code lebih baik pada string homogen dan string heterogen. 3. Berdasarkan nilai space savings yang didapat dari uji coba sistem terhadap string homogen dan heterogen diketahui bahwa space savings algoritma Boldi-Vigna ζ1 Code lebih baik pada file string homogen dan file string heterogen 4. Dilihat dari bit rate yang didapat dari hasil pengujian terhadap file string homogen dan string heterogen menunjukkan bahwa bit rate Boldi-Vigna ζ1 Code lebih baik pada file berisi string homogen, sedangkan Even-Rodeh Code lebih baik pada file berisi string heterogen. 5. Dilihat dari hasil pengujian terhadap string homogen dan heterogen diketahui bahwa proses kompresi menggunakan Boldi-Vigna ζ1 Code lebih cepat pada string homogen dan string heterogen 6. Hasil pengujian terhadap file berisi string homogen menunjukkan bahwa waktu yang dibutuhkan untuk proses dekompresi algoritma Even-Rodeh Code lebih sedikit dibandingkan algoritma Boldi-Vigna ζ1 Code. Sementara hasil pengujian file string heterogen menunjukkan bahwa waktu yang dibutuhkan algoritma Boldi-Vigna ζ1 Code Code lebih sedikit dibandingkan algoritma Even-Rodeh Code untuk proses dekompresi.

91 76 7. Berdasarkan perhitungan yang dilakukan nilai kompleksitas algoritma yang didapat dalam penelitian ini yaitu, nilai kompleksitas algoritma Boldi-Vigna ζ1 Code dan algoritma Even-Rodeh Code adalah sebesar Θ(n) Saran Berdasarkan penelitian yang dilakukan, beberapa saran yang dapat dipertimbangkan untuk penelitian selanjutnya adalah adalah sebagai berikut: 1. Pada penelitian ini proses kompresi hanya dilakukan terhadap file teks yang berekstensi.txt, untuk itu diharapkan pada penelitian selanjutnya mampu mengkompresi file teks dengan ekstensi lainnya, seperti.docx dan lain-lain. 2. Pada penelitian ini kompresi hanya dilakukan pada file teks, setelahnya diharapkan dapat mengkompresi bentuk file lain seperti file audio, video, dan lain-lain. 3. Pada penelitian ini, sistem dibangun dengan menggunakan bahasa pemrograman C#, diharapkan setelahnya dapat menggunakan bahasa pemrograman yang lain seperti Java, Python dan lain-lain. 4. Pada penelitian ini, sistem yang dibangun hanya dapat barjalan pada platform desktop, untuk itu pada penelitian berikutnya sistem diharapkan dapat berjalan pada platform android.

92 77 DAFTAR PUSTAKA Abdullah, A. R. (2016). Perbandingan Algoritma Even-Rodeh dan Algoritma Variable Length Binary Encoding (VLBE) pada kompresi file teks. Skripsi.. Medan Batubara, M. M. (2018). Implementasi Algoritma Vigenere Cipher dan Algoritma Even-Rodeh Code pada Pengamanan dan Kompresi File. Skripsi. Universitas Sumatera Utara. Medan Budiman, M. A. & Dian Rachmawati. (2017). On Using Goldbach Go Codes and Even- Rodeh Codes for Text Compression. Jurnal. IOP Conf. Series: Materials Science and Engineering, No DOI: /OSF.IO/8HJVB. Cormen, T.H., Leiserson, C.E., Rivest, R.L. & Stein, C. (2009). Introduction to Algorithms. Third Edition. The MIT Press: London. Ida, M. P. (2006). Fundamental Data Compression. Elsevier Publishers: New York. Retrieved April, 23, Jamaluddin, J. (2018). Analisis Perbandingan Kompresi Data dengan Fixed-Length Code, Variable-Length Code dan Algoritma Huffman. Skripsi. Universitas Sumatera Utara. Medan Kodituwakku, S. R., & Amarasinghe, U. S. (2010). Comparison of lossless data compression algorithms for text data. Indian journal of computer science and engineering, 1(4), Lestari, E. (2018). Implementasi Algoritma Knapsack dan Algoritma Boldi-Vigna (ζ4) pada Keamanan dan Kompresi File Teks. Skripsi. Universitas Sumatera Utara. Medan Motta, G., Rizzo, F., & Storer, J. A. (Eds.). (2006). Hyperspectral Data Compression. Springer Science & Business Media. Pu, I. M. (2005). Fundamental Data Compression. Butterworth-Heinemann.

93 78 Rao, K. R., & Yip, P. C. (2000). The Transform and Data Compression Handbook. CRC press. Salomon, D. (2007).Variable-Length Codes For Data Compression. Springer Science & Business Media. Salomon, D., & Motta, G. (2010). Handbook of Data Compression. Springer Science & Business Media.

94 A-1 LISTING PROGRAM Mainform.cs using System; using System.Collections.Generic; using System.Drawing; using System.Windows.Forms; namespace sistem_skripsi /// <summary> /// Description of MainForm. /// </summary> public partial class MainForm : Form public MainForm() // // The InitializeComponent() call is required for Windows Forms designer support. // InitializeComponent(); // // TODO: Add constructor code after the InitializeComponent() call. // void Label1Click(object sender, EventArgs e) void KompresiToolStripMenuItemClick(object sender, EventArgs e) Kompresi k = new Kompresi(); k.show(); this.hide(); void MainFormLoad(object sender, EventArgs e) void DekompresiToolStripMenuItemClick(object sender, EventArgs e) Dekompresi k = new Dekompresi(); k.show(); this.hide(); void BantuanToolStripMenuItemClick(object sender, EventArgs e) Bantuan k = new Bantuan(); k.show(); this.hide(); void TentangToolStripMenuItemClick(object sender,

95 A-2 EventArgs e) Tentang k = new Tentang(); k.show(); this.hide(); void BerandaToolStripMenuItemClick(object sender, EventArgs e) Kompresi.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Diagnostics; using System.Drawing; using System.Windows.Forms; namespace sistem_skripsi /// <summary> /// Description of Kompresi. /// </summary> public partial class Kompresi : Form public static int[] fr; public static String cs; public static String[] bv; public static String[] erc; public static int k = 1; public Kompresi() // // The InitializeComponent() call is required for Windows Forms designer support. // InitializeComponent(); // // TODO: Add constructor code after the InitializeComponent() call. // void GroupBox1Enter(object sender, EventArgs e) void BerandaToolStripMenuItemClick(object sender, EventArgs e)

96 A-3 MainForm k = new MainForm(); k.show(); this.hide(); void KompresiToolStripMenuItemClick(object sender, EventArgs e) Kompresi k = new Kompresi(); k.show(); this.hide(); void DekompresiToolStripMenuItemClick(object sender, EventArgs e) Dekompresi k = new Dekompresi(); k.show(); this.hide(); void BantuanToolStripMenuItemClick(object sender, EventArgs e) Bantuan k = new Bantuan(); k.show(); this.hide(); void TentangToolStripMenuItemClick(object sender, EventArgs e) Tentang k = new Tentang(); k.show(); this.hide(); public static string StringToBinary(string data) StringBuilder sb = new StringBuilder(); foreach (char c in data.tochararray()) sb.append(convert.tostring(c, 2).PadLeft(8, '0')); return sb.tostring(); public static String GetCharSet(String st) // fungsi untuk membuat tabel string StringBuilder s = new StringBuilder(); int n = st.length; for (int i = 0; i < n; i++) char c = st[i]; if (s.tostring().indexof(c) == -1) s.append(c); return s.tostring();

97 A-4 public static int CountChar(String s, char ch) // fungsi menghitung banyaknya karakter return s.split(ch).length - 1; public static int[] CountFreq(String st) // fungsi untuk menghitung frekuensi String charset = GetCharSet(st); int n = charset.length; int[] freq = new int[n]; for (int i = 0; i < n; i++) freq[i] = CountChar(st, charset[i]); return freq; public static void InsertionSort(int[] freq, String charset) // fungsi untuk mengurutkan karakter dan frekuensi fr = freq; cs = charset; int n = charset.length; StringBuilder sb = new StringBuilder(charset); for (int i = 1; i < n; i++) for (int j = 0; j < i; j++) if (fr[i] > fr[j]) int frtemp = fr[i]; fr[i] = fr[j]; fr[j] = frtemp; char sbtemp = sb[i]; sb[i] = sb[j]; sb[j] = sbtemp; cs = sb.tostring(); public static String Reverse(String sb) // fungsi untuk membalikkan array char[] chararray = sb.tochararray(); Array.Reverse(charArray); return new String(charArray); public static String DecToBin(int dec) // fungsi untuk mengubah decimal ke biner StringBuilder bin = new StringBuilder(); int r = dec % 2; bin.insert(0, r); dec = dec / 2; while (dec!= 0) r = dec % 2; bin.insert(0, r); dec = dec / 2; return bin.tostring();

98 A-5 public static int BinToDec(String bin) // fungsi untuk mengubah biner ke decimal StringBuilder sb = new StringBuilder(Reverse(bin)); int n = 1; int dec = 0; for (int i = 0; i < sb.length; i++) dec = dec + (int)(char.getnumericvalue(sb[i])) * n; n = n * 2; return dec; String[] s) // converts strings into stringbits public static String StringToStb(String st, String c, 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(); public static String Encode(String stb) // fungsi mengubah string ke biner untuk proses kompresi StringBuilder code = new StringBuilder(); for (int i = 0; i < stb.length; i+= 8) String x = stb.substring(i, 8); char y = (char)(bintodec(x)); code.append(y); return code.tostring(); public static String Decode(String code) //fungsi untuk mengubah biner ke string untuk proses dekompres

99 A-6 StringBuilder sb = new StringBuilder(); int t = code.length; for (int i = 0; i < t; i++) char x = code[i]; StringBuilder y = new StringBuilder(DecToBin((int)x)); if (y.length < 8) int z = 8 - y.length % 8; for (int j = 0; j < z; j++) y.insert(0, "0"); sb.append(y); return sb.tostring(); k)); public static String GetBoldiVigna(int n) int h = 0; int hmax = (int) Math.Pow(2, (h + 1) * k) - 1; while (n > hmax) h++; hmax = (int)math.pow(2, (h + 1) * k) - 1; string unary = "1".PadLeft(h + 1, '0'); int minbincodeorx = n - (int)math.pow(2, h * k); int z = (int)(math.pow(2, (h + 1) * k) - Math.Pow(2, h * int s = (int) Math.Ceiling(Math.Log(z,2)); int encodevalue = minbincodeorx; string encodebin=""; if (minbincodeorx >= Math.Pow(2, s) - z) encodevalue = (int) Math.Abs(Math.Abs(minBinCodeorX - z) - Math.Pow(2, s)); encodebin = Convert.ToString(encodeValue, 2).PadLeft(s, '0').Substring(0, s); else encodebin = Convert.ToString(encodeValue, 2).PadLeft(s - 1, '0').Substring(0, s-1); return unary+""+encodebin; public static void BoldiVignaCodes(String st) //fungsi untuk memanggil kode boldi-vigna int[] freq = CountFreq(st); String charset = GetCharSet(st); int t = charset.length; InsertionSort(freq, charset);

100 A-7 freq = fr; charset = cs; bv = new String[t]; int c = 0; for (int n = 0; n < t; n++) bv[c++] = GetBoldiVigna(n+1); public static String GetEvenRodeh(int n) //fungsi untuk membangkitkan kode even-rodeh StringBuilder sb = new StringBuilder(); if (n < 4) String c = Convert.ToString(n,2); int lc = c.length; for (int i = 0; i < 3 - lc; i++) sb.append("0"); sb.append(c); //return sb.tostring(); else if (n >= 4 && n < 8) String c = Convert.ToString(n,2); sb.append(c); sb.append("0"); //return sb.tostring(); else String c = Convert.ToString(n,2); sb.append(convert.tostring(c.length,2)); sb.append(c); sb.append("0"); return sb.tostring(); public static void EvenRodehCodes(String st) //fungsi untuk memanggil kode even-rodeh 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); void Btn_bukaClick(object sender, EventArgs e) OpenFileDialog open = new OpenFileDialog(); open.filter = "TXT files *.txt"; if(open.showdialog() == System.Windows.Forms.DialogResult.OK)

101 A-8 richtextbox1.text = ""; textbox1.text = open.filename; if(path.getextension(open.filename) == ".txt") string strfilename = open.filename; string txt = File.ReadAllText(strfilename); richtextbox1.text = txt; int ukuran = richtextbox1.text.length*8; textbox_awal.text = ukuran.tostring() +" bits"; richtextbox_uncompbin.text = StringToBinary(richTextBox1.Text); /* void Btn_simpanClick(object sender, EventArgs e) void Rbtn_ercCheckedChanged(object sender, EventArgs e) void RichTextBox1TextChanged(object sender, EventArgs e) */ void Btn_aturulangClick(object sender, EventArgs e) richtextbox1.text = null; richtextbox_compbin.text = null; richtextbox_uncompbin.text = null; textbox1.text = null; textbox_kompresiratio.text = null; textbox_bitrate.text = null; textbox_ss.text = null; textbox_waktukompresi.text=null; rbtn_erc.checked = false; rbtn_bv.checked = false; textbox_awal.text=null; textbox_akhir.text=null; void Btn_kompresiClick(object sender, EventArgs e) String kalimat = richtextbox1.text; if(rbtn_bv.checked == true) Stopwatch watch = new Stopwatch();// running time watch.start();

102 A-9 BoldiVignaCodes(kalimat); String stb = StringToStb(kalimat,cs,bv); String code = Encode(stb); String dc = Decode(code); richtextbox_compbin.text=stb; textbox_akhir.text=stb.length.tostring()+" bits"; double CR = (stb.length/(kalimat.length* 8 * 1.0))*100; textbox_kompresiratio.text =Math.Round(CR,2).ToString()+" %"; double SS = 100-CR; textbox_ss.text = Math.Round(SS,2).ToString()+" %"; textbox_waktukompresi.text = Math.Round(Convert.ToDecimal(watch.ElapsedMilliseconds)/1000,4).ToStr ing()+" ms"; double BR = stb.length/cs.length; textbox_bitrate.text = BR.ToString()+" bits/symbol"; textbox_akhir.text = stb.length.tostring()+" bits"; watch.stop(); SaveFileDialog simpan = new SaveFileDialog(); simpan.filter = "Compressed Files( *.bvc) *.bvc"; simpan.filename = "*.bvc"; if (simpan.showdialog() == DialogResult.OK) using(streamwriter writer = new StreamWriter(simpan.FileName)) writer.writeline(richtextbox_compbin.text); for(int i=0;i<bv.length;i++) writer.write(cs[i]+" "); writer.writeline(bv[i]); MessageBox.Show("File berhasil dikompresi dengan Boldi-Vigna Code"); else if(rbtn_erc.checked == true) Stopwatch watch = new Stopwatch();// running time watch.start(); EvenRodehCodes(kalimat); String stb = StringToStb(kalimat,cs,erc); String code = Encode(stb); String dc = Decode(code); richtextbox_compbin.text=stb; textbox_akhir.text=stb.length.tostring()+"

103 A-10 bits"; double CR = (stb.length/(kalimat.length* 8 * 1.0))*100; textbox_kompresiratio.text =Math.Round(CR,2).ToString()+" %"; double SS = 100-CR; textbox_ss.text = Math.Round(SS,2).ToString()+" %"; textbox_waktukompresi.text = Math.Round(Convert.ToDecimal(watch.ElapsedMilliseconds)/1000,4).ToStr ing()+" ms"; double BR = stb.length/cs.length; textbox_bitrate.text = BR.ToString()+" bits/symbol"; textbox_akhir.text = stb.length.tostring()+" bits"; watch.stop(); SaveFileDialog simpan = new SaveFileDialog(); simpan.filter = "Compressed Files( *.erc) *.erc"; simpan.filename = "*.erc"; if (simpan.showdialog() == DialogResult.OK) using(streamwriter writer = new StreamWriter(simpan.FileName)) writer.writeline(richtextbox_compbin.text); for(int i=0;i<erc.length;i++) writer.write(cs[i]+" "); writer.writeline(erc[i]); MessageBox.Show("File berhasil dikompresi dengan Boldi-Vigna Code"); else MessageBox.Show("Algoritma belum dipilih","peringatan",messageboxbuttons.ok,messageboxicon.warning); Dekompresi.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Diagnostics; using System.Drawing;

104 A-11 using System.Windows.Forms; namespace sistem_skripsi /// <summary> /// Description of Dekompresi. /// </summary> public partial class Dekompresi : Form string hasil,dc; List<string> cst = new List<string>(); List<string> str = new List<string>(); public Dekompresi() // // The InitializeComponent() call is required for Windows Forms designer support. // InitializeComponent(); // // TODO: Add constructor code after the InitializeComponent() call. // void DekompresiLoad(object sender, EventArgs e) void Button2Click(object sender, EventArgs e) richtextbox_decompressed.text = null; richtextbox_compressed.text = null; textbox1.text = null; textbox_waktudec.text = null; textbox_awaldec.text = null; textbox_akhirdec.text = null; void Btn_bukadekomClick(object sender, EventArgs e) e) void BantuanToolStripMenuItemClick(object sender, EventArgs Bantuan B = new Bantuan(); B.Show(); this.hide(); e) void TentangToolStripMenuItemClick(object sender, EventArgs Tentang t = new Tentang(); t.show(); this.hide();

105 A-12 e) e) void KompresiToolStripMenuItemClick(object sender, EventArgs Kompresi t = new Kompresi(); t.show(); this.hide(); void BerandaToolStripMenuItemClick(object sender, EventArgs MainForm t = new MainForm(); t.show(); this.hide(); public static string StringToBinary(string data) StringBuilder sb = new StringBuilder(); foreach (char c in data.tochararray()) sb.append(convert.tostring(c, 2).PadLeft(8, '0')); return sb.tostring(); public static String Reverse(String sb) // fungsi untuk membalikkan array char[] chararray = sb.tochararray(); Array.Reverse(charArray); return new String(charArray); private static String DecToBin(int dec) // fungsi untuk mengubah decimal ke biner StringBuilder bin = new StringBuilder(); int r = dec % 2; bin.insert(0, r); dec = dec / 2; while (dec!= 0) r = dec % 2; bin.insert(0, r); dec = dec / 2; return bin.tostring(); decimal int BinToDec(String bin) // fungsi untuk mengubah biner ke StringBuilder sb = new StringBuilder(Reverse(bin)); int n = 1; int dec = 0; for (int i = 0; i < sb.length; i++)

106 A-13 dec = dec + (int)(char.getnumericvalue(sb[i])) * n; n = n * 2; return dec; String Decode(String code) //fungsi untuk mengubah biner ke string untuk proses dekompres StringBuilder sb = new StringBuilder(); int t = code.length; for (int i = 0; i < t; i++) char x = code[i]; StringBuilder y = new StringBuilder(DecToBin((int)x)); if (y.length < 8) int z = 8 - y.length % 8; for (int j = 0; j < z; j++) y.insert(0, "0"); sb.append(y); return sb.tostring(); String DecompressFile() StringBuilder st = new StringBuilder(); StringBuilder bit = new StringBuilder(); StringBuilder stb2; int t = dc.length; int pad = BinToDec(dc.Substring(t - 8, 8)); stb2 = new StringBuilder(dc.Substring(0, t - pad - 8)); for (int i = 0; i < stb2.length; i++) bit.append(stb2[i]); if (str.contains(bit.tostring())) int x = str.indexof(bit.tostring()); st.append(cst[x]); bit = new StringBuilder(); return st.tostring(); void BukadekomClick(object sender, EventArgs e) int counter = 0; string line, temp; cst.clear(); str.clear(); OpenFileDialog open = new OpenFileDialog(); open.filter = "Compressed Files( *.bvc) *.bvc Compressed Files( *.erc) *.erc"; if (open.showdialog() == DialogResult.OK) textbox1.text = open.filename;

107 A-14 richtextbox_compressed.text=""; System.IO.StreamReader File = new System.IO.StreamReader(textBox1.Text); while ((line = File.ReadLine())!= null) if(counter == 0) hasil=line; else cst.add(line[0].tostring()); temp=""; for(int i=2; i<line.length;i++) temp+= line[i]; str.add(temp); counter++; File.Close(); richtextbox_compressed.text+=hasil; //for(int h = 0; h< cs.count; h++) //richtextboxcompressed.text += cs[h] + " "+ sssc[h] + Environment.NewLine; dc = hasil; var ukuran2 = dc.length; textbox_awaldec.text=ukuran2.tostring()+" bits"; void Button1Click(object sender, EventArgs e) Stopwatch watch = new Stopwatch(); watch.start(); String hasil = DecompressFile(); richtextbox_decompressed.text = hasil; textbox_akhirdec.text= (hasil.count() * 8).ToString()+" bits"; textbox_waktudec.text = Math.Round(Convert.ToDecimal(watch.ElapsedMilliseconds)/1000,4).ToStr ing()+" ms"; watch.stop(); void Btn_simpandekomClick(object sender, EventArgs e) SaveFileDialog simpan = new SaveFileDialog(); simpan.filter = "TXT files *.txt"; simpan.filename = "*.txt"; simpan.title = "Save File"; simpan.showdialog(); if(simpan.showdialog() == System.Windows.Forms.DialogResult.OK)

108 B-1 CURRICULUM VITAE Nama Lengkap Nama Panggilan Tempat/Tanggal Lahir Jenis Kelamin Agama Warga Negara Alamat Nomor Telepon : : Galuh Atika Nabila : Galuh : Lubuk Pakam / 1 Februari 1998 : Wanita : Islam : Indonesia : Jl. Muspika Gang. Cemara IV, Batang Kuis, Deli Serdang, Sumatera Utara galuhatk@gmail.com PENDIDIKAN Perguruan Tinggi Fakultas Ilmu Komputer dan Teknologi Informasi Program Studi S1 Ilmu Komputer IPK Sekarang Sekolah Menengah Atas SMAN 1 BATANG KUIS Sekolah Menengah Pertama SMPN 1 LUBUK PAKAM Sekolah Dasar SD YAYASAN PERGURUAN NUSANTARA

PERBANDINGAN ALGORITMA EVEN-RODEH CODE DAN ALGORITMA VARIABLE LENGTH BINARY ENCODING (VLBE) PADA KOMPRESI FILE TEKS SKRIPSI

PERBANDINGAN ALGORITMA EVEN-RODEH CODE DAN ALGORITMA VARIABLE LENGTH BINARY ENCODING (VLBE) PADA KOMPRESI FILE TEKS SKRIPSI PERBANDINGAN ALGORITMA EVEN-RODEH CODE DAN ALGORITMA VARIABLE LENGTH BINARY ENCODING (VLBE) PADA KOMPRESI FILE TEKS SKRIPSI ADE RANI ABDULLAH 121401012 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER

Lebih terperinci

PERBANDINGAN ALGORITMA TERNARY COMMA CODE (TCC) DAN LEVENSTEIN CODE DALAM KOMPRESI FILE TEXT SKRIPSI ZULAIHA YULANDARI

PERBANDINGAN ALGORITMA TERNARY COMMA CODE (TCC) DAN LEVENSTEIN CODE DALAM KOMPRESI FILE TEXT SKRIPSI ZULAIHA YULANDARI PERBANDINGAN ALGORITMA TERNARY COMMA CODE (TCC) DAN LEVENSTEIN CODE DALAM KOMPRESI FILE TEXT SKRIPSI ZULAIHA YULANDARI 121401140 PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

Lebih terperinci

IMPLEMENTASI ALGORITMA KRIPTOGRAFI HILL CIPHER DAN KOMPRESI DATA MENGGUNAKAN ALGORITMA LEVENSTEIN DALAM PENGAMANAN FILE TEKS SKRIPSI

IMPLEMENTASI ALGORITMA KRIPTOGRAFI HILL CIPHER DAN KOMPRESI DATA MENGGUNAKAN ALGORITMA LEVENSTEIN DALAM PENGAMANAN FILE TEKS SKRIPSI 0 IMPLEMENTASI ALGORITMA KRIPTOGRAFI HILL CIPHER DAN KOMPRESI DATA MENGGUNAKAN ALGORITMA LEVENSTEIN DALAM PENGAMANAN FILE TEKS SKRIPSI WINDI SAPUTRI SIMAMORA 131401085 PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS

Lebih terperinci

PERBANDINGAN KINERJA ALGORITMA FIXED LENGTH BINARY ENCODING (FLBE) DENGAN VARIABLE LENGTH BINARY ENCODING (VLBE) DALAM KOMPRESI TEXT FILE SKRIPSI

PERBANDINGAN KINERJA ALGORITMA FIXED LENGTH BINARY ENCODING (FLBE) DENGAN VARIABLE LENGTH BINARY ENCODING (VLBE) DALAM KOMPRESI TEXT FILE SKRIPSI PERBANDINGAN KINERJA ALGORITMA FIXED LENGTH BINARY ENCODING (FLBE) DENGAN VARIABLE LENGTH BINARY ENCODING (VLBE) DALAM KOMPRESI TEXT FILE SKRIPSI DEBORA VILIANA 121421016 PROGRAM STUDI EKSTENSI S1 ILMU

Lebih terperinci

ANALISIS PERBANDINGAN ALGORITMA HUFFMAN DAN RUN LENGTH ENCODING PADA KOMPRESI FILE AUDIO SKRIPSI HELBERT SINAGA

ANALISIS PERBANDINGAN ALGORITMA HUFFMAN DAN RUN LENGTH ENCODING PADA KOMPRESI FILE AUDIO SKRIPSI HELBERT SINAGA ANALISIS PERBANDINGAN ALGORITMA HUFFMAN DAN RUN LENGTH ENCODING PADA KOMPRESI FILE AUDIO SKRIPSI HELBERT SINAGA 131421097 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS

Lebih terperinci

PERANCANGAN SISTEM PENGAMANAN DAN KOMPRESI DATA TEKS DENGAN FIBONACCI ENCODING DAN ALGORITMA SHANNON-FANO SERTA ALGORITMA DEFLATE SKRIPSI

PERANCANGAN SISTEM PENGAMANAN DAN KOMPRESI DATA TEKS DENGAN FIBONACCI ENCODING DAN ALGORITMA SHANNON-FANO SERTA ALGORITMA DEFLATE SKRIPSI PERANCANGAN SISTEM PENGAMANAN DAN KOMPRESI DATA TEKS DENGAN FIBONACCI ENCODING DAN ALGORITMA SHANNON-FANO SERTA ALGORITMA DEFLATE SKRIPSI MUHAMMAD SOLIHIN 111421078 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER

Lebih terperinci

ANALISIS PERBANDINGAN ALGORITMA HUFFMAN DAN ALGORITMA SEQUITUR DALAM KOMPRESI DATA TEXT SKRIPSI ELSYA SABRINA ASMTA SIMORANGKIR

ANALISIS PERBANDINGAN ALGORITMA HUFFMAN DAN ALGORITMA SEQUITUR DALAM KOMPRESI DATA TEXT SKRIPSI ELSYA SABRINA ASMTA SIMORANGKIR ANALISIS PERBANDINGAN ALGORITMA HUFFMAN DAN ALGORITMA SEQUITUR DALAM KOMPRESI DATA TEXT SKRIPSI ELSYA SABRINA ASMTA SIMORANGKIR 131421029 PROGRAM STUDI S1 EKSTENSI ILMU KOMPUTER FAKULTAS ILMU KOMPUTER

Lebih terperinci

SKRIPSI SURI SYAHFITRI

SKRIPSI SURI SYAHFITRI ANALISIS PERBANDINGAN METODE LOW BIT CODING DAN LEAST SIGNIFICANT BIT UNTUK DIGITAL WATERMARKING PADA FILE WMA SKRIPSI SURI SYAHFITRI 091401013 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN

Lebih terperinci

Universitas Sumatera Utara

Universitas Sumatera Utara PERSETUJUAN Judul : PERBANDINGAN ALGORITMA STEGANOGRAFI ECHO DATA HIDING DAN LOW BIT ENCODING DALAM PENGAMANAN FILE Kategori : SKRIPSI Nama : MELLY Nomor Induk Mahasiswa : 131401136 Program Studi : SARJANA(S1)

Lebih terperinci

IMPLEMENTASI ALGORITMA HUFFMAN CODING DAN METODE LEAST SIGNIFICANT BIT(LSB) UNTUK PENYEMBUNYIAN CITRA BMP KE CITRA BMP JOHAN SURYA

IMPLEMENTASI ALGORITMA HUFFMAN CODING DAN METODE LEAST SIGNIFICANT BIT(LSB) UNTUK PENYEMBUNYIAN CITRA BMP KE CITRA BMP JOHAN SURYA IMPLEMENTASI ALGORITMA HUFFMAN CODING DAN METODE LEAST SIGNIFICANT BIT(LSB) UNTUK PENYEMBUNYIAN CITRA BMP KE CITRA BMP JOHAN SURYA 121401095 PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI

Lebih terperinci

ANALISIS PERBANDINGAN ALGORITMA QUICKSORT, 3 WAY QUICKSORT, DAN RADIXSORT SKRIPSI PLOREN PERONICA PASARIBU

ANALISIS PERBANDINGAN ALGORITMA QUICKSORT, 3 WAY QUICKSORT, DAN RADIXSORT SKRIPSI PLOREN PERONICA PASARIBU ANALISIS PERBANDINGAN ALGORITMA QUICKSORT, 3 WAY QUICKSORT, DAN RADIXSORT SKRIPSI PLOREN PERONICA PASARIBU 131421038 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

Lebih terperinci

IMPLEMENTASI STEGANOGRAFI HOPPING SPREAD SPECTRUM KE DALAM FILE VIDEO SKRIPSI

IMPLEMENTASI STEGANOGRAFI HOPPING SPREAD SPECTRUM KE DALAM FILE VIDEO SKRIPSI IMPLEMENTASI STEGANOGRAFI HOPPING SPREAD SPECTRUM KE DALAM FILE VIDEO SKRIPSI RICKY STEVEN 111401052 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

Lebih terperinci

PERBANDINGAN KUALITAS CITRA HASIL KOMPRESI METODE RUN LENGTH ENCODING DENGAN TRANSFORMASI WAVELET DAUBECHIES PADA CITRA DIGITAL SKRIPSI

PERBANDINGAN KUALITAS CITRA HASIL KOMPRESI METODE RUN LENGTH ENCODING DENGAN TRANSFORMASI WAVELET DAUBECHIES PADA CITRA DIGITAL SKRIPSI PERBANDINGAN KUALITAS CITRA HASIL KOMPRESI METODE RUN LENGTH ENCODING DENGAN TRANSFORMASI WAVELET DAUBECHIES PADA CITRA DIGITAL SKRIPSI TEGUH ARIF FEBIANTO 101401063 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS

Lebih terperinci

ANALISIS ASIMTOTIK DAN REAL TIME MENGGUNAKAN ALGORITMA L-DEQUE DALAM MENENTUKAN JARAK TERPENDEK ANTAR KANTOR CABANG BANK MANDIRI DI KOTA MEDAN SKRIPSI

ANALISIS ASIMTOTIK DAN REAL TIME MENGGUNAKAN ALGORITMA L-DEQUE DALAM MENENTUKAN JARAK TERPENDEK ANTAR KANTOR CABANG BANK MANDIRI DI KOTA MEDAN SKRIPSI 1 ANALISIS ASIMTOTIK DAN REAL TIME MENGGUNAKAN ALGORITMA L-DEQUE DALAM MENENTUKAN JARAK TERPENDEK ANTAR KANTOR CABANG BANK MANDIRI DI KOTA MEDAN SKRIPSI FACHROZI FAHMI 141421117 PROGRAM STUDI EKSTENSI

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM 3.1. Analisis Sistem Analisis sistem adalah salah satu tahap perancangan sebuah sistem yang bertujuan agar sistem yang dirancang menjadi tepat guna dan ketahanan sistem tersebut

Lebih terperinci

IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI TERNARY COMMA CODE DALAM KOMPRESI FILE TEXT PADA PLATFORM ANDROID SKRIPSI SITI SOENDARI UTAMI

IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI TERNARY COMMA CODE DALAM KOMPRESI FILE TEXT PADA PLATFORM ANDROID SKRIPSI SITI SOENDARI UTAMI IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI TERNARY COMMA CODE DALAM KOMPRESI FILE TEXT PADA PLATFORM ANDROID SKRIPSI SITI SOENDARI UTAMI 141421030 PROGRAM EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER

Lebih terperinci

IMPLEMENTASI ALGORITMA SHANNON-FANO PADA KOMPRESI AUDIO SKRIPSI MUTIARA NOVELIA RAJAGUKGUK

IMPLEMENTASI ALGORITMA SHANNON-FANO PADA KOMPRESI AUDIO SKRIPSI MUTIARA NOVELIA RAJAGUKGUK IMPLEMENTASI ALGORITMA SHANNON-FANO PADA KOMPRESI AUDIO SKRIPSI MUTIARA NOVELIA RAJAGUKGUK 081402068 PROGRAM STUDI S1 TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA

Lebih terperinci

IMPLEMENTASI ALGORITMA BLOWFISH PADA APLIKASI ENKRIPSI DAN DEKRIPSI CITRA BERBASIS WINDOWS SKRIPSI AHDA ANDI KURNIA

IMPLEMENTASI ALGORITMA BLOWFISH PADA APLIKASI ENKRIPSI DAN DEKRIPSI CITRA BERBASIS WINDOWS SKRIPSI AHDA ANDI KURNIA IMPLEMENTASI ALGORITMA BLOWFISH PADA APLIKASI ENKRIPSI DAN DEKRIPSI CITRA BERBASIS WINDOWS SKRIPSI AHDA ANDI KURNIA 111401104 PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

Lebih terperinci

ANALISIS DAN IMPLEMENTASI ALGORITMA KRIPTOGRAFI PLAYFAIR CIPHER DAN ALGORITMA KOMPRESI RUN LENGTH ENCODING DALAM PENGAMANAN DAN KOMPRESI DATA TEKS

ANALISIS DAN IMPLEMENTASI ALGORITMA KRIPTOGRAFI PLAYFAIR CIPHER DAN ALGORITMA KOMPRESI RUN LENGTH ENCODING DALAM PENGAMANAN DAN KOMPRESI DATA TEKS ANALISIS DAN IMPLEMENTASI ALGORITMA KRIPTOGRAFI PLAYFAIR CIPHER DAN ALGORITMA KOMPRESI RUN LENGTH ENCODING DALAM PENGAMANAN DAN KOMPRESI DATA TEKS ANANDA DWI PUTRI 121401050 PROGRAM STUDI S1 ILMU KOMPUTER

Lebih terperinci

IMPLEMENTASI DAN ANALISIS ALGORITMA DYNAMIC MARKOV COMPRESSION (DMC) PADA FILE TEXT

IMPLEMENTASI DAN ANALISIS ALGORITMA DYNAMIC MARKOV COMPRESSION (DMC) PADA FILE TEXT IMPLEMENTASI DAN ANALISIS ALGORITMA DYNAMIC MARKOV COMPRESSION (DMC) PADA FILE TEXT SKRIPSI FIKTARUDDIN 091401075 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA 2.1. Kompresi Data Kompresi data adalah proses mengkodekan informasi menggunakan bit atau information-bearing unit yang lain yang lebih rendah daripada representasi data yang tidak

Lebih terperinci

ANALISIS KINERJA DAN IMPLEMENTASI ALGORITMA KOMPRESI ARITHMETIC CODING PADA FILE TEKS DAN CITRA DIGITAL SKRIPSI SARIFAH

ANALISIS KINERJA DAN IMPLEMENTASI ALGORITMA KOMPRESI ARITHMETIC CODING PADA FILE TEKS DAN CITRA DIGITAL SKRIPSI SARIFAH ANALISIS KINERJA DAN IMPLEMENTASI ALGORITMA KOMPRESI ARITHMETIC CODING PADA FILE TEKS DAN CITRA DIGITAL SKRIPSI SARIFAH 061401090 PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA

Lebih terperinci

PROGRAM STUDI S-1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2012

PROGRAM STUDI S-1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2012 ANALISIS DAN PERBANDINGAN TEKNIK KOMPRESI MENGGUNAKAN ALGORITMA SHANNON-FANO DAN RUN LENGTH ENCODING PADA CITRA BERFORMAT BMP DAN PNG SKRIPSI ROHANI NASUTION 081401059 PROGRAM STUDI S-1 ILMU KOMPUTER DEPARTEMEN

Lebih terperinci

ANALISIS PERBANDINGAN KOMPRESI CITRA MENGGUNAKAN METODE JOINT PHOTOGRAPHIC EXPERTS GROUP (JPEG) DAN BURROWS-WHEELER TRANSFORM (BWT) SKRIPSI

ANALISIS PERBANDINGAN KOMPRESI CITRA MENGGUNAKAN METODE JOINT PHOTOGRAPHIC EXPERTS GROUP (JPEG) DAN BURROWS-WHEELER TRANSFORM (BWT) SKRIPSI ANALISIS PERBANDINGAN KOMPRESI CITRA MENGGUNAKAN METODE JOINT PHOTOGRAPHIC EXPERTS GROUP (JPEG) DAN BURROWS-WHEELER TRANSFORM (BWT) SKRIPSI YUDHA PRAYOGIE S 101401006 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS

Lebih terperinci

IMPLEMENTASI STEGANOGRAPHY NATURE OF WHITESPACE (SNOW) BERBASIS WEB MENGGUNAKAN METODE WHITESPACE SKRIPSI POPPY TANIA

IMPLEMENTASI STEGANOGRAPHY NATURE OF WHITESPACE (SNOW) BERBASIS WEB MENGGUNAKAN METODE WHITESPACE SKRIPSI POPPY TANIA 1 IMPLEMENTASI STEGANOGRAPHY NATURE OF WHITESPACE (SNOW) BERBASIS WEB MENGGUNAKAN METODE WHITESPACE SKRIPSI POPPY TANIA 101401018 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

Lebih terperinci

ANALISIS PERBANDINGAN KOMPRESI FILE VIDEO DENGAN MOTION PICTURE EXPERT GROUP-4 DAN FLASH VIDEO DENGAN MENGGUNAKAN ALGORITMA HUFFMAN SKRIPSI

ANALISIS PERBANDINGAN KOMPRESI FILE VIDEO DENGAN MOTION PICTURE EXPERT GROUP-4 DAN FLASH VIDEO DENGAN MENGGUNAKAN ALGORITMA HUFFMAN SKRIPSI ANALISIS PERBANDINGAN KOMPRESI FILE VIDEO DENGAN MOTION PICTURE EXPERT GROUP-4 DAN FLASH VIDEO DENGAN MENGGUNAKAN ALGORITMA HUFFMAN SKRIPSI NUZUL SAKINAH LUBIS 081401056 PROGRAM STUDI S1 ILMU KOMPUTER

Lebih terperinci

ANALISIS PERBANDINGAN KINERJA ALGORITMA SHANNON-FANO, ARITHMETIC CODING, DAN HUFFMAN PADA KOMPRESI BERKAS TEKS DAN BERKAS CITRA DIGITAL SKRIPSI

ANALISIS PERBANDINGAN KINERJA ALGORITMA SHANNON-FANO, ARITHMETIC CODING, DAN HUFFMAN PADA KOMPRESI BERKAS TEKS DAN BERKAS CITRA DIGITAL SKRIPSI ANALISIS PERBANDINGAN KINERJA ALGORITMA SHANNON-FANO, ARITHMETIC CODING, DAN HUFFMAN PADA KOMPRESI BERKAS TEKS DAN BERKAS CITRA DIGITAL SKRIPSI SYARIFAH KEUMALA ANDRIATY 091401084 PROGRAM STUDI S1 ILMU

Lebih terperinci

IMPLEMENTASI ALGORITMA TRITHEMIUS DENGAN ALGORITMA RICE DALAM PENGAMANAN DAN KOMPRESI FILE TEKS SKRIPSI RAJA ARIF HIDAYAH HARAHAP

IMPLEMENTASI ALGORITMA TRITHEMIUS DENGAN ALGORITMA RICE DALAM PENGAMANAN DAN KOMPRESI FILE TEKS SKRIPSI RAJA ARIF HIDAYAH HARAHAP IMPLEMENTASI ALGORITMA TRITHEMIUS DENGAN ALGORITMA RICE DALAM PENGAMANAN DAN KOMPRESI FILE TEKS SKRIPSI RAJA ARIF HIDAYAH HARAHAP 141421069 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER

Lebih terperinci

PERBANDINGAN ALGORITMA KNUTH MORRIS PRATT DAN BOYER MOORE PADA APLIKASI KAMUS BAHASA INDONESIA-KOREA BERBASIS ANDROID SKRIPSI

PERBANDINGAN ALGORITMA KNUTH MORRIS PRATT DAN BOYER MOORE PADA APLIKASI KAMUS BAHASA INDONESIA-KOREA BERBASIS ANDROID SKRIPSI PERBANDINGAN ALGORITMA KNUTH MORRIS PRATT DAN BOYER MOORE PADA APLIKASI KAMUS BAHASA INDONESIA-KOREA BERBASIS ANDROID SKRIPSI VICI INDAH YANA 121401062 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER

Lebih terperinci

SISTEM PENDUKUNG KEPUTUSAN PENENTUAN KELAYAKAN CALON ASISTEN LABORATORIUM BERBASIS ANDROID MENGGUNAKAN ALGORITMA ITERATIVE DICHOTOMISER 3 (ID3)

SISTEM PENDUKUNG KEPUTUSAN PENENTUAN KELAYAKAN CALON ASISTEN LABORATORIUM BERBASIS ANDROID MENGGUNAKAN ALGORITMA ITERATIVE DICHOTOMISER 3 (ID3) iii SISTEM PENDUKUNG KEPUTUSAN PENENTUAN KELAYAKAN CALON ASISTEN LABORATORIUM BERBASIS ANDROID MENGGUNAKAN ALGORITMA ITERATIVE DICHOTOMISER 3 (ID3) SKRIPSI VITO ERPINDO 101401027 PROGRAM STUDI S1 ILMU

Lebih terperinci

ANALISIS PERBANDINGAN KOMPRESI CITRA MENGUNAKAN ALGORITMA TRANSFORMASI WALSH-HADAMARD DENGAN RUN LENGTH ENCODING(RLE) DRAFT SKRIPSI

ANALISIS PERBANDINGAN KOMPRESI CITRA MENGUNAKAN ALGORITMA TRANSFORMASI WALSH-HADAMARD DENGAN RUN LENGTH ENCODING(RLE) DRAFT SKRIPSI ANALISIS PERBANDINGAN KOMPRESI CITRA MENGUNAKAN ALGORITMA TRANSFORMASI WALSH-HADAMARD DENGAN RUN LENGTH ENCODING(RLE) DRAFT SKRIPSI RACHMI HANDRIYATI 081401036 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU

Lebih terperinci

IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA ARITHMETIC CODING DAN SHANNON-FANO PADA KOMPRESI CITRA BMP SKRIPSI SYAHFITRI KARTIKA LIDYA

IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA ARITHMETIC CODING DAN SHANNON-FANO PADA KOMPRESI CITRA BMP SKRIPSI SYAHFITRI KARTIKA LIDYA IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA ARITHMETIC CODING DAN SHANNON-FANO PADA KOMPRESI CITRA BMP SKRIPSI SYAHFITRI KARTIKA LIDYA 081402070 PROGRAM STUDI TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER

Lebih terperinci

IMPLEMENTASI METODE GENERATE AND TEST DALAM PENYELESAIAN PUZZLE 2048 BERBASIS MOBILE SKRIPSI

IMPLEMENTASI METODE GENERATE AND TEST DALAM PENYELESAIAN PUZZLE 2048 BERBASIS MOBILE SKRIPSI IMPLEMENTASI METODE GENERATE AND TEST DALAM PENYELESAIAN PUZZLE 2048 BERBASIS MOBILE SKRIPSI DEVINA PRATIWI HALIM 101401094 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

Lebih terperinci

ANALISIS PERBANDINGAN HASIL ALGORITMA HOMOGENEITY DAN ALGORITMA PREWITT UNTUK DETEKSI TEPI PADA CITRA BMP SKRIPSI ZULFADHLI HARAHAP

ANALISIS PERBANDINGAN HASIL ALGORITMA HOMOGENEITY DAN ALGORITMA PREWITT UNTUK DETEKSI TEPI PADA CITRA BMP SKRIPSI ZULFADHLI HARAHAP ANALISIS PERBANDINGAN HASIL ALGORITMA HOMOGENEITY DAN ALGORITMA PREWITT UNTUK DETEKSI TEPI PADA CITRA BMP SKRIPSI ZULFADHLI HARAHAP 111421055 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER

Lebih terperinci

PROGRAM STUDI S1 ILMU KOMPUTER

PROGRAM STUDI S1 ILMU KOMPUTER IMPLEMENTASI SISTEM PENDUKUNG KEPUTUSAN (SPK) DENGAN METODE FUZZY LOGIC DAN PROFILE MATCHING DALAM SELEKSI PEMAIN FUTSAL (STUDI KASUS:PRA PON FUTSAL SUMATERA UTARA) SKRIPSI M IQBAL LUBIS 111401082 PROGRAM

Lebih terperinci

ANALISIS DAN PERANCANGAN ALGORITMA ARITHMETIC CODING DALAM KOMPRESI FILE AUDIO SKRIPSI DEBI MAULINA SIREGAR

ANALISIS DAN PERANCANGAN ALGORITMA ARITHMETIC CODING DALAM KOMPRESI FILE AUDIO SKRIPSI DEBI MAULINA SIREGAR ANALISIS DAN PERANCANGAN ALGORITMA ARITHMETIC CODING DALAM KOMPRESI FILE AUDIO SKRIPSI DEBI MAULINA SIREGAR 091421018 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA

Lebih terperinci

SATRIA F RAMADHAN S

SATRIA F RAMADHAN S 2 ANALISIS KETAHANAN CITRA STEGO METODE LSB+1 DAN MLSB TERHADAP PERUBAHAN KONTRAS CITRA SATRIA F RAMADHAN S 111401049 PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS

Lebih terperinci

STUDI PERBANDINGAN ALGORITMA HUFFMAN DAN LZW (LEMPEL ZIV WELCH) PADA PEMAMPATAN FILE TEKS SKRIPSI CANGGIH PRAMILO

STUDI PERBANDINGAN ALGORITMA HUFFMAN DAN LZW (LEMPEL ZIV WELCH) PADA PEMAMPATAN FILE TEKS SKRIPSI CANGGIH PRAMILO STUDI PERBANDINGAN ALGORITMA HUFFMAN DAN LZW (LEMPEL ZIV WELCH) PADA PEMAMPATAN FILE TEKS SKRIPSI Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar Sarjana Komputer CANGGIH PRAMILO

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Keamanan dan kerahasiaan data merupakan salah satu faktor penting yang harus diperhatikan dalam komunikasi terutama dengan kemajuan dan perkembangan teknologi

Lebih terperinci

STUDI PERBANDINGAN KOMPRESI MENGGUNAKAN METODE SHANNON FANO DAN UNARY CODING PADA FILE TEKS EUNIKE JOHANA

STUDI PERBANDINGAN KOMPRESI MENGGUNAKAN METODE SHANNON FANO DAN UNARY CODING PADA FILE TEKS EUNIKE JOHANA STUDI PERBANDINGAN KOMPRESI MENGGUNAKAN METODE SHANNON FANO DAN UNARY CODING PADA FILE TEKS SKRIPSI EUNIKE JOHANA 071402044 PROGRAM STUDI TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

Lebih terperinci

PERBANDINGAN ALGORITMA STRING MATCHING NOT SO NAIVE DAN SKIP SEARCH PADA PLATFORM ANDROID SKRIPSI RICKY WIJAYA

PERBANDINGAN ALGORITMA STRING MATCHING NOT SO NAIVE DAN SKIP SEARCH PADA PLATFORM ANDROID SKRIPSI RICKY WIJAYA PERBANDINGAN ALGORITMA STRING MATCHING NOT SO NAIVE DAN SKIP SEARCH PADA PLATFORM ANDROID SKRIPSI RICKY WIJAYA 121401081 PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS

Lebih terperinci

IMPLEMENTASI ALGORITMA KUNCI PUBLIK LUC DAN ALGORITMA KOMPRESI GOLDBACH CODES UNTUK PERANCANGAN APLIKASI PENGAMANAN DAN KOMPRESI FILE PDF SKRIPSI

IMPLEMENTASI ALGORITMA KUNCI PUBLIK LUC DAN ALGORITMA KOMPRESI GOLDBACH CODES UNTUK PERANCANGAN APLIKASI PENGAMANAN DAN KOMPRESI FILE PDF SKRIPSI IMPLEMENTASI ALGORITMA KUNCI PUBLIK LUC DAN ALGORITMA KOMPRESI GOLDBACH CODES UNTUK PERANCANGAN APLIKASI PENGAMANAN DAN KOMPRESI FILE PDF SKRIPSI SABRINA RIDHA SARI SINAGA 141421085 PROGRAM STUDI EKSTENSI

Lebih terperinci

BAB 1 PENDAHULUAN Latar Belakang

BAB 1 PENDAHULUAN Latar Belakang 1 BAB 1 PENDAHULUAN 1.1. Latar Belakang Kompresi data adalah suatu proses untuk mengubah sebuah input data stream (stream sumber atau data mentah asli) ke dalam aliran data yang lain yang berupa output

Lebih terperinci

PERBANDINGAN STEGANOGRAFI DATA TEKS KE DALAM FILE AUDIO MENGGUNAKAN ALGORITMA LEAST SIGNIFICANT BIT (LSB) DAN MODIFIED LEAST SIGNIFICANT BIT (MLSB)

PERBANDINGAN STEGANOGRAFI DATA TEKS KE DALAM FILE AUDIO MENGGUNAKAN ALGORITMA LEAST SIGNIFICANT BIT (LSB) DAN MODIFIED LEAST SIGNIFICANT BIT (MLSB) PERBANDINGAN STEGANOGRAFI DATA TEKS KE DALAM FILE AUDIO MENGGUNAKAN ALGORITMA LEAST SIGNIFICANT BIT (LSB) DAN MODIFIED LEAST SIGNIFICANT BIT (MLSB) DRAFT SKRIPSI NICOLAS O. BARUS 081401044 PROGRAM STUDI

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Kompresi 2.1.1 Sejarah kompresi Kompresi data merupakan cabang ilmu komputer yang bersumber dari Teori Informasi. Teori Informasi sendiri adalah salah satu cabang Matematika yang

Lebih terperinci

IMPLEMENTASI ALGORITMA BRUTE FORCE DAN ALGRITMA KNUTH-MORRIS-PRATT (KMP) DALAM PENCARIAN WORD SUGGESTION SKRIPSI ADLI ABDILLAH NABABAN

IMPLEMENTASI ALGORITMA BRUTE FORCE DAN ALGRITMA KNUTH-MORRIS-PRATT (KMP) DALAM PENCARIAN WORD SUGGESTION SKRIPSI ADLI ABDILLAH NABABAN IMPLEMENTASI ALGORITMA BRUTE FORCE DAN ALGRITMA KNUTH-MORRIS-PRATT (KMP) DALAM PENCARIAN WORD SUGGESTION SKRIPSI ADLI ABDILLAH NABABAN 131421065 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER

Lebih terperinci

ANALISIS DUPLICATE FILE FINDER MENGGUNAKAN METODE MD5 HASH SKRIPSI WAHYUNI FARAH JUWITA

ANALISIS DUPLICATE FILE FINDER MENGGUNAKAN METODE MD5 HASH SKRIPSI WAHYUNI FARAH JUWITA ANALISIS DUPLICATE FILE FINDER MENGGUNAKAN METODE MD5 HASH SKRIPSI WAHYUNI FARAH JUWITA 111421081 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA Pada bab ini penulis memaparkan teori-teori ilmiah yang didapat dari metode pencarian fakta yang digunakan untuk mendukung penulisan skripsi ini dan sebagai dasar pengembangan sistem

Lebih terperinci

STUDI PERBANDINGAN ALGORITMA HUFFMAN DAN SHANNON-FANO DALAM PEMAMPATAN FILE TEKS SKRIPSI NURFITA SARI HASIBUAN

STUDI PERBANDINGAN ALGORITMA HUFFMAN DAN SHANNON-FANO DALAM PEMAMPATAN FILE TEKS SKRIPSI NURFITA SARI HASIBUAN STUDI PERBANDINGAN ALGORITMA HUFFMAN DAN SHANNON-FANO DALAM PEMAMPATAN FILE TEKS SKRIPSI NURFITA SARI HASIBUAN 051411012 PROGRAM STUDI SARJANA MATEMATIKA DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU

Lebih terperinci

ANALISIS DAN PERBANDINGAN ALGORITMAL-DEQUE DANALGORITMA BELLMAN-FORD DALAM MENCARI JARAK TERPENDEK SKRIPSI

ANALISIS DAN PERBANDINGAN ALGORITMAL-DEQUE DANALGORITMA BELLMAN-FORD DALAM MENCARI JARAK TERPENDEK SKRIPSI ANALISIS DAN PERBANDINGAN ALGORITMAL-DEQUE DANALGORITMA BELLMAN-FORD DALAM MENCARI JARAK TERPENDEK SKRIPSI NATASHA MAHARANI SIREGAR 121401099 PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN

Lebih terperinci

ANALISIS DAN PERANCANGAN SISTEM KRIPTOGRAFI SIMETRIS TRIPLE DES DAN KRIPTOGRAFI ASIMETRIS RSA SKRIPSI BENY

ANALISIS DAN PERANCANGAN SISTEM KRIPTOGRAFI SIMETRIS TRIPLE DES DAN KRIPTOGRAFI ASIMETRIS RSA SKRIPSI BENY ANALISIS DAN PERANCANGAN SISTEM KRIPTOGRAFI SIMETRIS TRIPLE DES DAN KRIPTOGRAFI ASIMETRIS RSA SKRIPSI BENY 101421002 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA 6 BAB 2 TINJAUAN PUSTAKA 2.1. Kompresi Data Dalam ilmu komputer, pemampatan data atau kompresi data adalah sebuah cara untuk memadatkan data sehingga hanya memerlukan ruangan penyimpanan lebih kecil sehingga

Lebih terperinci

IMPLEMENTASI KOMBINASI ALGORITMA COLUMNAR TRANSPOSITION CIPHER DAN DATA ENCRYPTION STANDARD PADA APLIKASI ENKRIPSI DAN DEKRIPSI TEKS BERBASIS ANDROID

IMPLEMENTASI KOMBINASI ALGORITMA COLUMNAR TRANSPOSITION CIPHER DAN DATA ENCRYPTION STANDARD PADA APLIKASI ENKRIPSI DAN DEKRIPSI TEKS BERBASIS ANDROID IMPLEMENTASI KOMBINASI ALGORITMA COLUMNAR TRANSPOSITION CIPHER DAN DATA ENCRYPTION STANDARD PADA APLIKASI ENKRIPSI DAN DEKRIPSI TEKS BERBASIS ANDROID SKRIPSI SAMUEL PANJAITAN 111401111 PROGRAM STUDI S1

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Peningkatan teknologi komputer memberikan banyak manfaat bagi manusia di berbagai aspek kehidupan, salah satu manfaatnya yaitu untuk menyimpan data, baik data berupa

Lebih terperinci

PENYANDIAN DATA TEKS DENGAN ALGORITMA ELGAMAL DAN ALGORITMA KOMPRESI DATA DENGAN ALGORITMA ELIAS GAMMA CODE SKRIPSI WIWIN AGUSTINI LUBIS

PENYANDIAN DATA TEKS DENGAN ALGORITMA ELGAMAL DAN ALGORITMA KOMPRESI DATA DENGAN ALGORITMA ELIAS GAMMA CODE SKRIPSI WIWIN AGUSTINI LUBIS PENYANDIAN DATA TEKS DENGAN ALGORITMA ELGAMAL DAN ALGORITMA KOMPRESI DATA DENGAN ALGORITMA ELIAS GAMMA CODE SKRIPSI WIWIN AGUSTINI LUBIS 131421061 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 6 BAB 2 LANDASAN TEORI 2.1. Kompresi Data Kompresi adalah mengecilkan/ memampatkan ukuran. Kompresi Data adalah teknik untuk mengecilkan data sehingga dapat diperoleh file dengan ukuran yang lebih kecil

Lebih terperinci

IMPLEMENTASI RUBY GAME SCRIPTING SYSTEM PADA GAME LUDO SKRIPSI DICKO IFENTA

IMPLEMENTASI RUBY GAME SCRIPTING SYSTEM PADA GAME LUDO SKRIPSI DICKO IFENTA IMPLEMENTASI RUBY GAME SCRIPTING SYSTEM PADA GAME LUDO SKRIPSI DICKO IFENTA 121421088 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN

Lebih terperinci

IMPLEMENTASI KOMBINASI ALGORITMA BEAUFORT DAN ALGORITMA SPRITZ DALAM SKEMA SUPER ENKRIPSI UNTUK PENGAMANAN TEKS SKRIPSI TIA RAHMADIANTI

IMPLEMENTASI KOMBINASI ALGORITMA BEAUFORT DAN ALGORITMA SPRITZ DALAM SKEMA SUPER ENKRIPSI UNTUK PENGAMANAN TEKS SKRIPSI TIA RAHMADIANTI IMPLEMENTASI KOMBINASI ALGORITMA BEAUFORT DAN ALGORITMA SPRITZ DALAM SKEMA SUPER ENKRIPSI UNTUK PENGAMANAN TEKS SKRIPSI TIA RAHMADIANTI 131401026 PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER

Lebih terperinci

IMPLEMENTASI METODE KUANTISASI PADA KOMPRESI DAN DEKOMPRESI CITRA BITMAP DAN JPEG SKRIPSI WINDA DIAN LUCA HSB

IMPLEMENTASI METODE KUANTISASI PADA KOMPRESI DAN DEKOMPRESI CITRA BITMAP DAN JPEG SKRIPSI WINDA DIAN LUCA HSB IMPLEMENTASI METODE KUANTISASI PADA KOMPRESI DAN DEKOMPRESI CITRA BITMAP DAN JPEG SKRIPSI WINDA DIAN LUCA HSB 091401076 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS

Lebih terperinci

IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA SHANNON- FANO UNTUK KOMPRESI FILE TEXT

IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA SHANNON- FANO UNTUK KOMPRESI FILE TEXT IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA SHANNON- FANO UNTUK KOMPRESI FILE TEXT Sutardi Staf Pengajar Jurusan Pendidikan Teknik Informatika Fakultas Teknik Universitas Halu Oleo Kampus Hijau Bumi Tridarma

Lebih terperinci

UNIVERSITAS BINA NUSANTARA

UNIVERSITAS BINA NUSANTARA UNIVERSITAS BINA NUSANTARA Program Ganda Teknik Informatika Statistika Skripsi Sarjana Program Ganda Semester Ganjil 2005/2006 ANALISIS PERBANDINGAN ALGORITMA RUN LENGTH, HUFFMAN DAN HALFBYTE UNTUK PEMAMPATAN

Lebih terperinci

ANALISIS PERBANDINGAN GEOMETRIC MEAN FILTER DENGAN OPERATOR SOBEL, OPERATOR PREWITT DAN OPERATOR ROBERT PADA CITRA BITMAP SKRIPSI

ANALISIS PERBANDINGAN GEOMETRIC MEAN FILTER DENGAN OPERATOR SOBEL, OPERATOR PREWITT DAN OPERATOR ROBERT PADA CITRA BITMAP SKRIPSI ANALISIS PERBANDINGAN GEOMETRIC MEAN FILTER DENGAN OPERATOR SOBEL, OPERATOR PREWITT DAN OPERATOR ROBERT PADA CITRA BITMAP SKRIPSI MAGDALENA SIREGAR 111401109 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU

Lebih terperinci

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. 1.1 Latar Belakang BAB I PENDAHULUAN Pada Bab I membahas latar belakang masalah yang akan dibahas didalam skripsi, dalam bab ini juga merangkum rumusan masalah, ruang lingkup penelitian, manfaat penelitian, penelitian sebelumnya,

Lebih terperinci

PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2013

PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2013 PERBANDINGAN HASIL WATERMARKING PADA VIDEO AVI DENGAN MP4 MENGGUNAKAN ALGORITMA ECHO DATA HIDING SKRIPSI OLEH JUANDA 081401006 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Kompresi Data Kompresi data di dalam konteks ilmu komputer adalah merupakan ilmu atau seni dalam merepresentasikan informasi yang terdapat pada data ke dalam suatu bentuk yang

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Citra adalah gambar bidang dua dimensi yang juga merupakan keluaran data. Artinya suatu data atau informasi tidak hanya direpresentasikan dalam bentuk teks, namun juga

Lebih terperinci

KOMPRESI FILE.TXT DENGAN ALGORITMA HUFFMAN PADA FILE DENGAN MENGGUNAKAN PENGKODEAN BASE-64 SKRIPSI. Oleh : LINGGA ADI FIRMANTO ( )

KOMPRESI FILE.TXT DENGAN ALGORITMA HUFFMAN PADA FILE DENGAN MENGGUNAKAN PENGKODEAN BASE-64 SKRIPSI. Oleh : LINGGA ADI FIRMANTO ( ) KOMPRESI FILE.TXT DENGAN ALGORITMA HUFFMAN PADA FILE DENGAN MENGGUNAKAN PENGKODEAN BASE-64 SKRIPSI Oleh : LINGGA ADI FIRMANTO ( 0734010127 ) `` PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INDUSTRI

Lebih terperinci

IMPLEMENTASI SISTEM PAKAR DIAGNOSIS GANGGUAN KEPRIBADIANMENGGUNAKAN METODE CERTAINTY FACTOR DAN METODE FUZZY SKRIPSI HERY HADINATA SEMBIRING

IMPLEMENTASI SISTEM PAKAR DIAGNOSIS GANGGUAN KEPRIBADIANMENGGUNAKAN METODE CERTAINTY FACTOR DAN METODE FUZZY SKRIPSI HERY HADINATA SEMBIRING IMPLEMENTASI SISTEM PAKAR DIAGNOSIS GANGGUAN KEPRIBADIANMENGGUNAKAN METODE CERTAINTY FACTOR DAN METODE FUZZY SKRIPSI HERY HADINATA SEMBIRING 111421068 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA 2.1. Kompresi Data Kompresi data adalah proses mengkodekan informasi menggunakan bit atau information-bearing unit yang lain yang lebih rendah daripada representasi data yang tidak

Lebih terperinci

ANALISIS KOMPRESI CITRA DIGITAL DENGAN METODE FRAKTAL SKRIPSI DEVI TRIANA

ANALISIS KOMPRESI CITRA DIGITAL DENGAN METODE FRAKTAL SKRIPSI DEVI TRIANA ANALISIS KOMPRESI CITRA DIGITAL DENGAN METODE FRAKTAL SKRIPSI DEVI TRIANA 081401012 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2015 25

Lebih terperinci

IMPLEMENTASI METODE ARITHMETIC MEAN FILTER DAN KOMPRESI CITRA MENGGUNAKAN METODE RUN LENGTH ENCODING (RLE) SKRIPSI RETRI WITRA NASTITI

IMPLEMENTASI METODE ARITHMETIC MEAN FILTER DAN KOMPRESI CITRA MENGGUNAKAN METODE RUN LENGTH ENCODING (RLE) SKRIPSI RETRI WITRA NASTITI IMPLEMENTASI METODE ARITHMETIC MEAN FILTER DAN KOMPRESI CITRA MENGGUNAKAN METODE RUN LENGTH ENCODING (RLE) SKRIPSI RETRI WITRA NASTITI 111401116 PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN

Lebih terperinci

BAB 2 LANDASAN TEORI. 2.1 Kompresi Data

BAB 2 LANDASAN TEORI. 2.1 Kompresi Data BAB 2 LANDASAN TEORI 2.1 Kompresi Data Kompresi data telah dimanfaatkan dalam berbagai aspek multimedia. gambar, audio maupun video yang kita dapatkan dari web merupakan file yang telah terkompresi. TV-HD

Lebih terperinci

IMPLEMENTASI ALGORITMA KNUTH-MORRIS-PRATH STRING MATCHING UNTUK MENCARI KATA ATAU ISTILAH PADA KAMUS KOMPUTER BERBASIS ANDROID.

IMPLEMENTASI ALGORITMA KNUTH-MORRIS-PRATH STRING MATCHING UNTUK MENCARI KATA ATAU ISTILAH PADA KAMUS KOMPUTER BERBASIS ANDROID. IMPLEMENTASI ALGORITMA KNUTH-MORRIS-PRATH STRING MATCHING UNTUK MENCARI KATA ATAU ISTILAH PADA KAMUS KOMPUTER BERBASIS ANDROID. SKRIPSI INDAH MUSTIKA TANJUNG 121421004 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER

Lebih terperinci

MULTIMEDIA system. Roni Andarsyah, ST., M.Kom Lecture Series

MULTIMEDIA system. Roni Andarsyah, ST., M.Kom Lecture Series MULTIMEDIA system Roni Andarsyah, ST., M.Kom Lecture Series Kompresi data teks (Huffman coding, RLE coding, LZW coding, arithmetic coding Representasi dan kompresi data suara dan audio Representasi dan

Lebih terperinci

PERBANDINGAN METODE DETEKSI TEPI CANNY, ROBERT DAN LAPLACIAN OF GAUSSIAN PADA HASIL CITRA CAMERA 360 SKRIPSI TIFANY BR SEMBIRING

PERBANDINGAN METODE DETEKSI TEPI CANNY, ROBERT DAN LAPLACIAN OF GAUSSIAN PADA HASIL CITRA CAMERA 360 SKRIPSI TIFANY BR SEMBIRING PERBANDINGAN METODE DETEKSI TEPI CANNY, ROBERT DAN LAPLACIAN OF GAUSSIAN PADA HASIL CITRA CAMERA 360 SKRIPSI TIFANY BR SEMBIRING 111401027 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI

Lebih terperinci

IMPLEMENTASI ALGORITMA GENETIK UNTUK MENYELESAIKAN MASALAH TRAVELING SALESMAN PROBLEM (STUDI KASUS: SATUAN KERJA PERANGKAT DAERAH KOTA MEDAN)

IMPLEMENTASI ALGORITMA GENETIK UNTUK MENYELESAIKAN MASALAH TRAVELING SALESMAN PROBLEM (STUDI KASUS: SATUAN KERJA PERANGKAT DAERAH KOTA MEDAN) IMPLEMENTASI ALGORITMA GENETIK UNTUK MENYELESAIKAN MASALAH TRAVELING SALESMAN PROBLEM (STUDI KASUS: SATUAN KERJA PERANGKAT DAERAH KOTA MEDAN) DRAFT SKRIPSI RAJO PANANGIAN HARAHAP 111421045 PROGRAM STUDI

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA 2.1 Definisi Citra Citra adalah suatu representasi (gambaran), kemiripan, atau imitasi dari suatu objek. Citra sebagai keluaran suatu sistem perekaman data dapat bersifat optik berupa

Lebih terperinci

ANALISIS DAN PERANCANGAN APLIKASI STEGANALISIS PADA MEDIA CITRA BMP DENGAN METODE ENHANCED LEAST SIGNIFICANT BIT SKRIPSI DESMAWATI

ANALISIS DAN PERANCANGAN APLIKASI STEGANALISIS PADA MEDIA CITRA BMP DENGAN METODE ENHANCED LEAST SIGNIFICANT BIT SKRIPSI DESMAWATI ANALISIS DAN PERANCANGAN APLIKASI STEGANALISIS PADA MEDIA CITRA BMP DENGAN METODE ENHANCED LEAST SIGNIFICANT BIT SKRIPSI DESMAWATI 091421063 PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS

Lebih terperinci

IMPLEMENTASI ALGORITMA XOR DAN ALGORITMA RC4 PADA APLIKASI ENKRIPSI DAN DEKRIPSI TEKS BERBASIS ANDROID SKRIPSI TANTA ADITYA PRANATA

IMPLEMENTASI ALGORITMA XOR DAN ALGORITMA RC4 PADA APLIKASI ENKRIPSI DAN DEKRIPSI TEKS BERBASIS ANDROID SKRIPSI TANTA ADITYA PRANATA IMPLEMENTASI ALGORITMA XOR DAN ALGORITMA RC4 PADA APLIKASI ENKRIPSI DAN DEKRIPSI TEKS BERBASIS ANDROID SKRIPSI TANTA ADITYA PRANATA 111401122 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA 6 BAB 2 TINJAUAN PUSTAKA 2.1 Kompresi Istilah kompresi berasal dari kata bahasa Inggris compression yang berarti pemampatan. Kompresi berarti memampatkan data yang berukuran besar sehingga menjadi kecil

Lebih terperinci

IMPLEMENTASI ALGORITMA HORSPOOL DALAM PEMBUATAN KAMUS ISTILAH PSIKOLOGI PADA PLATFORM ANDROID SKRIPSI ADE MUTIARA KARTIKA DEWI NASUTION

IMPLEMENTASI ALGORITMA HORSPOOL DALAM PEMBUATAN KAMUS ISTILAH PSIKOLOGI PADA PLATFORM ANDROID SKRIPSI ADE MUTIARA KARTIKA DEWI NASUTION IMPLEMENTASI ALGORITMA HORSPOOL DALAM PEMBUATAN KAMUS ISTILAH PSIKOLOGI PADA PLATFORM ANDROID SKRIPSI ADE MUTIARA KARTIKA DEWI NASUTION 121401059 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN

Lebih terperinci

PERBANDINGAN ALGORITMA TURBO BOYER MOORE DAN STRING MATCHING ON ORDERED ALPHABETS UNTUK APLIKASI KAMUS FISIKA BERBASIS ANDROID SKRIPSI

PERBANDINGAN ALGORITMA TURBO BOYER MOORE DAN STRING MATCHING ON ORDERED ALPHABETS UNTUK APLIKASI KAMUS FISIKA BERBASIS ANDROID SKRIPSI PERBANDINGAN ALGORITMA TURBO BOYER MOORE DAN STRING MATCHING ON ORDERED ALPHABETS UNTUK APLIKASI KAMUS FISIKA BERBASIS ANDROID SKRIPSI NURMARDIAH SIREGAR 121401071 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS

Lebih terperinci

PERANCANGAN APLIKASI PAILLIER CRYPTOSYSTEM UNTUK MENGAMANKAN DATA FILE SKRIPSI NOVY

PERANCANGAN APLIKASI PAILLIER CRYPTOSYSTEM UNTUK MENGAMANKAN DATA FILE SKRIPSI NOVY PERANCANGAN APLIKASI PAILLIER CRYPTOSYSTEM UNTUK MENGAMANKAN DATA FILE SKRIPSI NOVY 071401034 PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS

Lebih terperinci

ANALISIS DAN PERANCANGAN APLIKASI PENERIMAAN SISWA BARU MENGGUNAKAN METODE SAW DAN METODE PROMETHEE (STUDI KASUS : SMAN 1 TEBING TINGGI) SKRIPSI

ANALISIS DAN PERANCANGAN APLIKASI PENERIMAAN SISWA BARU MENGGUNAKAN METODE SAW DAN METODE PROMETHEE (STUDI KASUS : SMAN 1 TEBING TINGGI) SKRIPSI i ANALISIS DAN PERANCANGAN APLIKASI PENERIMAAN SISWA BARU MENGGUNAKAN METODE SAW DAN METODE PROMETHEE (STUDI KASUS : SMAN 1 TEBING TINGGI) SKRIPSI FIRDHA SEPTIA 111421073 PROGRAM STUDI EKSTENSI S1 ILMU

Lebih terperinci

TUGAS AKHIR IMPLEMENTASI TEKNIK KOMPRESI VIDEO DENGAN ALGORITMA DISCRETE COSINE TRANSFORM PADA PERANGKAT BERGERAK

TUGAS AKHIR IMPLEMENTASI TEKNIK KOMPRESI VIDEO DENGAN ALGORITMA DISCRETE COSINE TRANSFORM PADA PERANGKAT BERGERAK TUGAS AKHIR IMPLEMENTASI TEKNIK KOMPRESI VIDEO DENGAN ALGORITMA DISCRETE COSINE TRANSFORM PADA PERANGKAT BERGERAK Diajukan untuk memenuhi salah satu persyaratan dalam menyelesaikan pendidikan sarjana (S-1)

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA Dalam penulisan tugas akhir ini, penulis mengambil beberapa materi dan memaparkan teori-teori ilmiah yang didapat dari metode pencarian fakta yang digunakan untuk mendukung penyusunan

Lebih terperinci

IMPLEMENTASI MODIFIKASI SISTEM KRIPTOGRAFI RSA DAN ELLIPTIC CURVE DIGITAL SIGNATURE ALGORITHM (ECDSA) SKRIPSI ANDRUS

IMPLEMENTASI MODIFIKASI SISTEM KRIPTOGRAFI RSA DAN ELLIPTIC CURVE DIGITAL SIGNATURE ALGORITHM (ECDSA) SKRIPSI ANDRUS IMPLEMENTASI MODIFIKASI SISTEM KRIPTOGRAFI RSA DAN ELLIPTIC CURVE DIGITAL SIGNATURE ALGORITHM (ECDSA) SKRIPSI ANDRUS 111401094 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

Lebih terperinci

IMPLEMENTASI ALGORITMA RC4 DAN METODE MODIFIED LSB UNTUK PENGAMANAN TEXT FILE SKRIPSI FEBRI ARO GEA

IMPLEMENTASI ALGORITMA RC4 DAN METODE MODIFIED LSB UNTUK PENGAMANAN TEXT FILE SKRIPSI FEBRI ARO GEA IMPLEMENTASI ALGORITMA RC4 DAN METODE MODIFIED LSB UNTUK PENGAMANAN TEXT FILE SKRIPSI FEBRI ARO GEA 111401087 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA

Lebih terperinci

ANALISIS DAN PERBANDINGAN ALGORITMA L-QUEUE DAN ALGORITMA FLOYD DALAM PENENTUAN LINTASAN TERPENDEK PADA GRAPH SKRIPSI

ANALISIS DAN PERBANDINGAN ALGORITMA L-QUEUE DAN ALGORITMA FLOYD DALAM PENENTUAN LINTASAN TERPENDEK PADA GRAPH SKRIPSI ANALISIS DAN PERBANDINGAN ALGORITMA L-QUEUE DAN ALGORITMA FLOYD DALAM PENENTUAN LINTASAN TERPENDEK PADA GRAPH SKRIPSI DHIKA HANDAYANI RANGKUTI 121401110 PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER

Lebih terperinci

PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2014

PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2014 IMPLEMENTASI PERBANDINGAN METODE PROFILE MATCHING DAN SIMPLE ADDITIVE WEIGHTING (SAW) DALAM PENILAIAN KINERJA KARYAWAN (STUDI KASUS DINAS KEBUDAYAAN DAN PARIWISATA PROVINSI SUMATERA UTARA) SKRIPSI IBRAHIM

Lebih terperinci

VERIFIKASI INTEGRITAS DATA YANG DIUNDUH DARI INTERNET DENGAN MENGGUNAKAN MESSAGE DIGEST 5 (MD5) SKRIPSI IVAN JAYA

VERIFIKASI INTEGRITAS DATA YANG DIUNDUH DARI INTERNET DENGAN MENGGUNAKAN MESSAGE DIGEST 5 (MD5) SKRIPSI IVAN JAYA VERIFIKASI INTEGRITAS DATA YANG DIUNDUH DARI INTERNET DENGAN MENGGUNAKAN MESSAGE DIGEST 5 (MD5) SKRIPSI IVAN JAYA 060823018 DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS

Lebih terperinci

IMPLEMENTASI METODE MEDIAN FILTERING DAN KOMPRESI JPEG UNTUK CITRA BMP SKRIPSI ZULWITA HARIYATI

IMPLEMENTASI METODE MEDIAN FILTERING DAN KOMPRESI JPEG UNTUK CITRA BMP SKRIPSI ZULWITA HARIYATI IMPLEMENTASI METODE MEDIAN FILTERING DAN KOMPRESI JPEG UNTUK CITRA BMP SKRIPSI ZULWITA HARIYATI 101401002 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA

Lebih terperinci

SKRIPSI BILQIS

SKRIPSI BILQIS ANALISIS DAN PERANCANGAN APLIKASI PESAN RAHASIA MENGGUNAKAN ALGORITMA ONE TIME PAD (OTP) DENGAN PEMBANGKIT BILANGAN ACAK LINEAR CONGRUENTIAL GENERATOR (LCG) SKRIPSI BILQIS 081401072 PROGRAM STUDI S1 ILMU

Lebih terperinci

SISTEM INFORMASI GEOGRAFIS BERBASIS WEB UNTUK MENENTUKAN JARAK TERPENDEK MENGGUNAKAN ALGORITMA DIJKSTRA (Studi Kasus : Plaza / Mall Dikota Medan)

SISTEM INFORMASI GEOGRAFIS BERBASIS WEB UNTUK MENENTUKAN JARAK TERPENDEK MENGGUNAKAN ALGORITMA DIJKSTRA (Studi Kasus : Plaza / Mall Dikota Medan) SISTEM INFORMASI GEOGRAFIS BERBASIS WEB UNTUK MENENTUKAN JARAK TERPENDEK MENGGUNAKAN ALGORITMA DIJKSTRA (Studi Kasus : Plaza / Mall Dikota Medan) SKRIPSI ADLY AZHARY 101421060 PROGRAM STUDI S1 EKSTENSI

Lebih terperinci

PERBANDINGAN ALGORITMA BOYER-MOORE DAN ALGORITMA RABIN- KARP PADA PENCARIAN TEKS DALAM UNDANG- UNDANG PERLINDUNGAN ANAK SKRIPSI

PERBANDINGAN ALGORITMA BOYER-MOORE DAN ALGORITMA RABIN- KARP PADA PENCARIAN TEKS DALAM UNDANG- UNDANG PERLINDUNGAN ANAK SKRIPSI PERBANDINGAN ALGORITMA BOYER-MOORE DAN ALGORITMA RABIN- KARP PADA PENCARIAN TEKS DALAM UNDANG- UNDANG PERLINDUNGAN ANAK SKRIPSI PRADITA OKTAVIANI 121401041 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA 5 BAB 2 TINJAUAN PUSTAKA 2.1. Kompresi Data Kompresi data adalah proses mengubah sebuah aliran data input menjadi aliran data baru yang memiliki ukuran lebih kecil. Aliran yang dimaksud adalah berupa file

Lebih terperinci

SKRIPSI SHERLY MELISA SEMBIRING

SKRIPSI SHERLY MELISA SEMBIRING SISTEM PENDUKUNG KEPUTUSAN PENENTUAN KELAYAKAN CALON TENAGA KERJA INDONESIA (TKI) KE LUAR NEGERI MENGGUNAKAN METODE SIMPLE ADDITIVE WEIGHTING (SAW) DAN SIMPLE MULTI - ATTRIBUTE RATING TECHNIQUE (SMART)

Lebih terperinci

PERBANDINGAN ALGORITMA HUFFMAN DAN ALGORITMA SHANNON-FANO PADA PROSES KOMPRESI BERBAGAI TIPE FILE. Irwan Munandar

PERBANDINGAN ALGORITMA HUFFMAN DAN ALGORITMA SHANNON-FANO PADA PROSES KOMPRESI BERBAGAI TIPE FILE. Irwan Munandar PERBANDINGAN ALGORITMA HUFFMAN DAN ALGORITMA SHANNON-FANO PADA PROSES KOMPRESI BERBAGAI TIPE FILE I. Pendahuluan Irwan Munandar Balai Pendidikan dan Pelatihan Tambang Bawah Tanah Keterbatasan komputer

Lebih terperinci

1. PENDAHULUAN 1.1. Latar Belakang Masalah

1. PENDAHULUAN 1.1. Latar Belakang Masalah 1. PENDAHULUAN 1.1. Latar Belakang Masalah Kompresi data merupakan suatu proses pengubahan ukuran suatu file atau dokumen menjadi lebih kecil secara ukuran. Berkembangnya teknologi hardware dan software

Lebih terperinci