STUDI KOMPARASI KINERJA ALGORITMA GOLDBACH G1 CODE DAN ALGORITMA UNARY CODES DALAM KOMPRESI TEKS SKRIPSI WINDA APRIANTI HARAHAP

Ukuran: px
Mulai penontonan dengan halaman:

Download "STUDI KOMPARASI KINERJA ALGORITMA GOLDBACH G1 CODE DAN ALGORITMA UNARY CODES DALAM KOMPRESI TEKS SKRIPSI WINDA APRIANTI HARAHAP"

Transkripsi

1 STUDI KOMPARASI KINERJA ALGORITMA GOLDBACH G1 CODE DAN ALGORITMA UNARY CODES DALAM KOMPRESI TEKS SKRIPSI WINDA APRIANTI HARAHAP PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2017

2 STUDI KOMPARASI KINERJA ALGORITMA GOLDBACH G1 CODE DAN ALGORITMA UNARY CODES DALAM KOMPRESI TEKS SKRIPSI Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer WINDA APRIANTI HARAHAP PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2017

3 PERSETUJUAN Judul : STUDI KOMPARASI KINERJA ALGORITMA GOLDBACH G1 CODE DAN ALGORITMA UNARY CODES DALAM KOMPRESI TEKS Kategori : SKRIPSI Nama : WINDA APRIANTI HARAHAP Nomor Induk Mahasiswa : Program Studi : S1 ILMU KOMPUTER Fakultas : ILMU KOMPUTER DAN TEKNOLOGIINFORMASI UNIVERSITAS SUMATERA UTARA Komisi Pembimbing : Pembimbing 2 Pembimbing 1 Sri Melvani Hardi, S.Kom.,M.kom M. Andri Budiman, ST, M.Comp.Sc, MEM NIP NIP Diketahui/Disetujui oleh Program Studi S1 Ilmu Komputer Ketua, Dr. Poltak Sihombing, M.Kom NIP

4 iii PERNYATAAN STUDI KOMPARASI KINERJA ALGORITMA GOLDBACH G1 CODE DAN ALGORITMA UNARY CODES DALAM KOMPRESI TEKS SKRIPSI Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya. Medan, 26 Oktober 2017 Winda Aprianti Harahap

5 iv UCAPAN TERIMA KASIH Puji dan syukur atas kehadirat Allah SWT, karenaberkat rahmat dan karunia-nya penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. Pada pengerjaan skripsi dengan judul Studi Komparasi Algoritma Goldbach G1Code dan Unary Codes dalam Kompresi Teks, penulis menyadari bahwa banyakpihak yang turut membantu, baik dari pihak keluarga, sahabat dan orang-orang terkasih yang memotivasi dalam pengerjaannya. Dalam kesempatan ini, penulis mengucapkan terima kasih kepada: 1. Bapak Prof. Runtung Sitepu, SH, M.Hum selaku Rektor Universitas Sumatera Utara. 2. Bapak Prof. Dr. Opim Salim Sitompul, M.Sc selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. 3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer Universitas Sumatera Utara. 4. Bapak Mohammad Andri Budiman, ST. M.Comp,Sc, MEM, selaku Dosen Pembimbing Iyang selalu membantu dan memberikan kritik dan saran serta motivasi yang membangun untuk penulis dalam menyelesaikan skripsi ini. 5. Ibu Sri Melvani Hardi, S.Kom.,M.kom, selaku dosen pembimbing II yang telah memberikan bimbingan, kritik, saran, dan dukungan kepada penulis untuk menyelesaikan skripsi ini. 6. Ibu Dr.Elviawaty Muisa Zamzami,ST,MT,MM selaku dosen pembanding II yang telah memberikan kritik dan saran kepada penulis untuk menyelesaikan skripsi ini.

6 v 7. Bapak Herriyance, ST.,M.kom selaku dosen pembanding II yang telah memberikan kritik dan saran kepada penulis untuk menyelesaikan skripsi ini. 8. Seluruh dosen dan pegawai Program studi S1 Imu Komputer Fasilkom-TI Universitas Sumatera Utara. 9. Ayahanda Ir.Zainal Abidin Harahap, Ibunda Ida Frianti S.sos, Adinda Astri ananda,irsyad hamdi, Muthia Dara dan Syifa Nabila yang mana telah banyak memberikan kasih sayang, semangat, serta dorongan kepada penulis. 10. Sahabat-sahabat seperjuangan penulis yaitu Nisa, Pece, Dodo, Mega, Syara, Wahyu, Madan, Riki, Fariz, Alwi, Paulus, Ilyas, Sandrayang sama-sama berjuang untuk menyelesaikan skripsi. 11. Sahabat yang baik hati tempat berbagi referensi dan tempat bertanya dalam menyelesaikan skripsi Raviza Sitepu. 12. Semua pihak yang terlibat langsung maupun tidak langsung yang tidak dapat penulis ucapkan satu demi satu yang telah membantu penyelesaian laporan ini. Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini. Medan, 26 Oktober 2017 Penulis, Winda Aprianti Harahap

7 vi ABSTRAK Perkembangan teknologi yang pesat, sangat berperan penting dalam pertukaran informasi yang cepat. Pada pengiriman informasi dalam bentuk teks masih mengalami kendala, diantaranya adalah karena besarnya ukuran teks sehingga solusi untuk masalah tersebut adalah dengan melakukan kompresi. Kompresi bertujuan untuk mengurangi ukuran data tersebut menjadi sekecil mungkin. Ada banyak metode kompresi teks, namun pada tugas akhir ini akan dibahas komparasi kinerja algoritma Goldbach Code G1 dan Unary Codes dengan implementasi menggunakan bahasa pemrograman C#. Analisis kinerja algoritma ini bertujuan untuk mengetahui performa algoritma melalui perhitungan Compression Ratio (CR), Space Saving (SS), waktu kompresi (ms) dan pada file teks. Penelitian ini menggunakan sampel pengujian 1 Variasi Karakter, penambahan variasi karakter dan perulangan karakter. Hasil pengujian menunjukkan bahwa algoritma Unary Codes lebih baik untuk 1 variasi karakter dan penambahan variasi karakter karena menghasilkan ukuran kompresi yang lebih kecil dari Goldbach G1 Code. Pada kompresi 1 variasi karakter rata-rata Compression Ratio sebesar 31,44 dan Space Saving sebesar 579,47. Dalam proses penambahan variasi karakter rata-rata Compression Ratio sebesar 22,05 dan Space Saving sebesar 480,8. Sedangkan untuk perulangan karakter algoritma Goldbach G1 Code lebih baik karena menghasilkan ukuran kompresi yang lebih kecil dari pada algoritma Unary Codes, rata-rata Compression Ratio sebesar 6,9 dan Space Saving dengan rata-rata 1,4. Waktu kompresi pada pengujian file dipengaruhi oleh banyak frekuensi dan variasi karakter secara real time. Kata kunci: Kompresi, Teks, Goldbach G1 Code, Unary Codes.

8 vii COMPARISON STUDY PERFORMANCE OF GOLDBACH G1 CODE AND UNARY CODES IN TEXT COMPRESSION ABSTRACT Rapid technological developments, plays an important role in the rapid exchange of information. On the transmission of information in the form of text is still experiencing problems, such as the size of the text so that the solution to the problem is to do the compression. Compression aims to reduce the size of the data becomes as small as possible. There are many methods of text compression, but in this final project will discuss performance comparison of Goldbach Code G1 and Unary Codes algorithm with implementation using C # programming language. The performance analysis of this algorithm aims to know the performance of algorithm through calculation of Compression Ratio (CR), Space Saving (SS), compression time (ms) and in text file. This study used the test sample 1 character variation, the addition of character variation and character repetition. Test results show that the Unary Codes algorithm is better for 1 character variation and the addition of character variation as it results in a smaller compression size than the Goldbach G1 Code. In compression 1 Average character variation compression Ratio of and Space Saving of In the process of adding the average character variation of Compression Ratio is and Space Saving is 480,8. As for the looping character of the Goldbach G1 Code algorithm is better because it produces smaller compression sizes than the Unary Codes algorithm, the average Compression Ratio of 6.9 and Space Saving with an average of 1.4. The compression time in the test file is affected by many frequency and character variations in real time. Keywords: Compression, Text, Goldbach G1 Code, Unary Codes

9 viii DAFTAR ISI Persetujuan Pernyataan Ucapan Terima Kasih Abstrak Abstract Daftar Isi Daftar Tabel Daftar Gambar Daftar Lampiran Hal. ii iii iv vi vii viii x xi xii Bab 1 Pendahuluan 1.1 Latar Belakang Rumusan Masalah Batasan Masalah Tujuan Penelitian Manfaat Penelitian Metodologi Penelitian Sistematika Penulisan 4 Bab 2 Landasan Teori 2.1 Kompresi Data Teknik Kompresi Pengukuran Kinerja Kompresi Data Dekompresi 2.2 File Teks Format Teks 2.3 Algoritma Goldbach G1 code Algoritma Unary Codes 13 Bab 3 Analisis Dan Perancangan 3.1 Analisis Sistem Analisis masalah Analisis kebutuhan Analisis proses Pemodelan Sistem Use case diagram Activity diagram

10 ix SequenceDiagram Flowchart Flowchart gambaran sistem secara umum Flowchart kompresi dan dekompresi teks Flowchart algoritma Goldbach G1 Code Flowchart algoritma Unary Codes Perancangan sistem Form beranda Form menu Form bantuan Form tentang Bab 4 Implementasi Dan Pengujian Sistem 4.1. Implementasi Sistem Form menu beranda Form menu kompresi dan dekompresi Form menu bantuan Form menu tentang Pengujian Sistem Pengujian kompresi dengan algoritma Goldbach Code G Pengujian kompresi dengan algoritma Unary Codes Pengujian dekompresi dengan algoritma Goldbach Code G Pengujian dekompresi dengan algoritma Unary Codes 4.3 Hasil Pengujian Isi file pengujian Hasil pengujian Bab 5 Kesimpulan Dan Saran 5.1 Kesimpulan 5.2 Saran Daftar Pustaka

11 x DAFTAR TABEL Tabel 2.1 Tabel Goldbach G0 Code Tabel 2.2 Tabel Goldbach G1 Code Tabel 2.3 Tabel Unary Codes Tabel 2.4 Tabel Frekuensi Simbol Algoritma Unary Code Tabel 2.5 Tabel Pengkodean Algoritma Unary Code Tabel 3.1 Tabel String sebelum dikompresi Tabel 3.2 Tabel String setelah dikompresi dengan Goldbach G1 Code Tabel 3.3 Tabel String setelah Dikompresi dengan Unary Codes Tabel 3.4 Tabel String setelah dikompresi dengan Goldbach G1 Code Tabel 3.5 Tabel String setelah Dikompresi dengan Unary Codes Tabel 4.1 Isi File.txt 1 Variasi Karakter Tabel 4.2 Isi File.txt Penambahan 1 Variasi Karakter Tabel 4.3 Isi File.txt Perulangan 20 Karakter Tabel 4.4 Hasil Pengujian 1 Variasi Karakter dengan Algoritma Goldbach G1 Code Tabel 4.5 Hasil Pengujian 1 Variasi Karakter dengan Algoritma Unary Codes Tabel 4.6 Hasil Pengujian Penambahan Variasi Karakter dengan Algoritma Goldbach G1 Code Tabel 4.7 Hasil Pengujian Penambahan Variasi dengan Algoritma Unary Codes Tabel 4.8 Hasil Pengujian Perulangan Karakter dengan Algoritma Goldbach G1 Code Tabel 4.9 Hasil Pengujian Perulangan Karakter dengan algoritma Unary Codes Halaman

12 xi DAFTAR GAMBAR Halaman Gambar 3.1 DiagramIshikawa analisis masalah 16 Gambar 3.2 Use case diagram sistem 25 Gambar 3.3 ActivityDiagram proses kompresi 26 Gambar 3.4 ActivityDiagram proses dekompresi 26 Gambar 3.5 SequenceDiagram proses kompresi 27 Gambar 3.6 SequenceDiagram proses dekompresi 27 Gambar 3.7 Flowchart gambaran sistem secara umum 28 Gambar 3.8 Flowchart kompresi dan dekompresi teks 29 Gambar 3.9 Flowchart algoritma Goldbach G1Code 30 Gambar 3.10 Flowchart algoritma Unary Codes 31 Gambar 3.11 Perancangan form beranda 33 Gambar 3.12 Perancangan form kompresi dan dekompresi 34 Gambar 3.13 Perancangan form bantuan 35 Gambar 3.14 Perancangan form tentang 36 Gambar 4.1 Form menu beranda 37 Gambar 4.2 Form menu kompresi dan dekompresi 38 Gambar 4.3 Form menu bantuan 39 Gambar 4.4 Form menu tentang 39 Gambar 4.5 Tampilan isi file.txt yang akan dikompresi Gambar 4.6 Tampilan hasil kompresi dengan algoritma Goldbach G1 Code Gambar 4.7 Tampilan file hasil kompresi yang akan disimpan Gambar 4.8 Isi teks yang telah dikompresi Gambar 4.9 Tampilan hasil kompresi dengan algoritma Unary Codes 43 Gambar 4.10 Tampilan isi file yang akan didekompresi 44 Gambar 4.11 Tampilan hasil dekompresi 44 Gambar 4.12 Hasil dekompresi 45 Gambar 4.13 Grafik compression ratio pada file.txt 1 variasi karakter 49 Gambar 4.14 Grafik space saving pada file.txt 1 variasi karakter Gambar 4.15 Grafik waktu kompresi pada file.txt 1 variasi karakter Gambar 4.16 Grafik compression ratio penambahan variasi karakter 53 Gambar 4.17 Grafik space saving pada penambahan variasi karakter 53 Gambar 4.18 Grafik waktu kompresi pada penambahan variasi karakter 54 Gambar 4.19 Grafik compression ratio perulangan karakter 56 Gambar 4.20 Grafik space saving perulangan karakter 56 Gambar 4.21 Grafik waktu kompresi perulangan karakter

13 xii DAFTAR LAMPIRAN Halaman Lampiran 1 Listing Program A-1 Lampiran 2 Curriculum Vitae B-1

14 BAB 1 PENDAHULUAN 1.1. Latar Belakang Perkembangan teknologi informasi saat ini berkembang sangat cepat yang mempengaruhi media penyimpanan dan transmisi data..kecepatan transmisi data secara real-time menjadikan perpindahan data harus semakin cepat dan akurat. Hingga saat ini media penyimpanan dan transmisi data secara real-time masih mengalami kendala. Diantaranya adalah besarnya ukuran file yang akan dikirimkan atau dipindahkan sehingga diperlukan kecepatan transmisi untuk proses transfer dan juga memori yang besar untuk menyimpan data atau informasi tesebut (Pu, 2006). Salah satu cara yang digunakan untuk menanggulangi masalah-masalah diatas adalah dengan menggunakan kompresi data. Dalam ilmu komputer, kompresi data adalah sebuah cara untuk memadatkan data sehingga hanya memerlukan ruangan penyimpanan yang lebih kecil agar lebih efisien dalam menyimpan data atau mempersingkat waktu pertukaran data tersebut. Masalah yang mendasar pada proses kompresi data adalah bagaimana proses memampatkan data tersebut, khususnya data teks agar diperoleh file teks dengan ukuran yang lebih kecil dari ukuran semula kemudian penerima akan merekonstruksinya kembali menjadi data aslinya (dekompresi). Berdasarkan hal yang telah diuraikan di atas, peneliti akan mengkompresi teks dengan membandingkan waktu kompresi, rasio kompresi (Cr) dan space saving(ss) pada Algoritma Goldbach G1 code dan Algoritma Unary Codes. Berdasarkan penelitian sebelumnya dengan menggunakan algoritma Goldbach G0 Code lebih baik dari algoritma Elias Gamma dalam kompresi teks (Hannisa,2016). Pada penelitian ini akan membandingkan dan menganalisis kinerja kedua algoritma dalam hal rasio kompresi, space saving serta waktu kompresi.

15 Rumusan Masalah Berdasarkan latar belakang di atas, maka rumusan masalah dalam penelitian ini adalah bagaimana menganalisa dan membandingkan kinerja kompresi file teks dengan menggunakan algoritma Goldbach G1 Code dan Unary Codes dengan parameter yaitu waktu kompresi, rasio kompresi (Cr) dan space saving (SS) Batasan Masalah Batasan masalah penelitian sebagai berikut: 1. Jenis data yang akan dikompresi adalah string dalam file teks (*.txt). 2. Komponen lain seperti gambar yang ada didalam file teks yang digunakan akan diabaikan. 3. Algoritma tersebut hanya dapat melakukan kompresi dan dekompresi. 4. Membandingkan Algoritma Goldbach G1 code dan algoritma Unary Codes. 5. Parameter yang digunakan untuk membandingkan algoritma tersebut adalah kompleksitas waktu,rasio kompresi (Cr)dan space saving. 6. Kedua algoritma akan berhenti mengkompresi ketika jumlah variasi karakter sebesar 14 karakter. 7. Kode teks yang digunakan adalah kode ASCII (American Standard Code for Information Interchange) 8 bit. 8. Bahasa pemrograman yang digunakan adalah bahasa pemrograman C# Tujuan Penelitian Tujuan penelitian ini adalah : 1. Mengetahui nilai perbandingan rasio kompresi dari kedua algoritma dalam kompresi teks. 2. Mengetahui kecepatan kompresi dan dekompresi masing masing algoritma. 3. Menganalisis besar space saving masing-masing algoritma.

16 Manfaat Penelitian Manfaat dari penelitian ini adalah : 1. Dapat mengetahui algoritma kompresi mana yang lebih baik antara algoritma Goldbach G1 code dengan Unary Codes dengan parameter yang telah diteliti. 2. Mengurangi kapasitas penyimpanan teks dengan mengurangi ukuran teks yang disimpan. 3. Menjadi bahan referensi bagi penelitian lain yang ingin membahas topik yang berkaitan dengan penelitian ini Metodologi Penelitian Penelitian ini menerapkan beberapa metode penelitian sebagai berikut: 1. Studi Literatur Tahap studi literatur dilakukan pengumpulan referensi yang diperlukan dalam penelitian. Tahap ini dilakukan untuk memperoleh informasi dan data yang diperlukan untuk penulisan penelitian ini. Referensi yang digunakan berupa buku, jurnal, paper, skripsi, tesis, makalah baik berupa media cetak maupun media internet mengenai algoritma pada teknik kompresi loseless. 2. Analisis Algoritma Pada tahap ini akan dianalisis algoritma yang akan dibandingkan, pengukuran kinerja algoritma serta cara kerja algoritma. Sehingga nantinya sistem dapat mengimplementasikan Algoritma Goldbach G1 code dan Algoritma Unary Codes. 3. Analisis Sistem Pada tahap ini akan dianalisis sistem yang akan dibuatbatasan sistem, kebutuhan sistem, kinerja sistem dan cara kerja sistem. Sehingga sistem dapat mengimplementasikan Algoritma Goldbach G1 code dan Algoritma Unary Codes. 4. Perancangan Sistem Pada tahap ini akan dilakukan perancangan diagram alur sistem,user interface, Unified Modeling Language (UML), dan struktur program kompresi citra. 5. Implementasi Sistem Sistem diimplementasikan dengan menggunakan Algoritma Goldbach G1 code dan Algoritma Unary Codes.

17 4 6. Pengujian Sistem Pada tahap ini dilakukan pengujian kinerja sistem dan kebenaran hasil kompresi file teks yang dilakukan dengan dua algoritma lossless yang berbeda. 7. Dokumentasi Sistem Pada tahap ini seluruh kegiatan dalam pembuatan sistem didokumentasikan kedalam bentuk tulisan berupa laporan tugas akhir Sistematika Penulisan Setelah uraian di bab satu ini, penyajian selanjutnya disampaikan dengan sistematika berikut : BAB 1 : PENDAHULUAN Menguraikan Latar Belakang, Rumusan Masalah, Tujuan, Batasan Masalah dan Sistematika Penulisan Skripsi. BAB 2 : TINJAUAN PUSTAKA Menguraikan rangkuman teori yang dihimpun dari pustaka yang relevan dengan topik yang menjadi objek kajian, untuk memperluas basis informasi dalam melakukan kajian dan akan digunakan sebagai basis argumentasi di dalam mengemukakan pandangan. BAB 3 : ANALISIS DAN PERANCANGAN Menguraikan proses yang dilaksanakan dalam kajian untuk menyelesaikan persoalan yang dipertanyakan dan bagaimana pelaksanaan kajian tersebut. BAB 4 : HASIL DAN PEMBAHASAN Menguraikan analisis dan hasil yang diperoleh di akhir pelaksanaan. Skripsi dan pokok-pokok kesimpulan yang dapat dikemukakan sehubungan dengan pencapaian hasil kajian kompresi Algoritma Goldbach G1 code dan Algoritma Unary Codes

18 5 BAB 5 : KESIMPULAN DAN SARAN Bab ini berisi tentang kesimpulan dari keseluruhan hasil penelitian dan saran berdasarkan hasil pengujian untuk keperluan pengembangan penelitian selanjutnya.

19 BAB 2 LANDASAN TEORI 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 dalam memori. Kebutuhan terhadap kompresi data dipengaruhi oleh dua alasan, yaitu kecenderungan manusia untuk mengumpulkan data dan kebutuhan terhadap proses transfer data yang cepat. Karena itu metode-metode untuk mengkompresi data semakin berkembang. (Salomon, 2007) Tujuan dari kompresi data adalah untuk memperkecil jumlah ukuran data (hasil kompresi) dari data aslinya agar ruang penyimpanan lebih kecil, memudahkan proses transmisi, serta memperkecil kebutuhan lebar bidang (bandwidth) Teknik Kompresi Data yang akan dimampatkan harus dianalisis terlebih dahulu, dan berharap menemukan pola tertentu yang dapat digunakan untuk memperoleh data dalam ukuran yang lebih kecil. Karena itu, muncul banyak algoritma-algoritma kompresi data.secara garis besar, terdapat 2 penggolongan algoritma kompresi data: kompresi lossy, dan kompresi lossless. 1. Kompresi Lossy Algoritma kompresi dikatakan lossy atau disebut juga irreversible jika tidak dimungkinkan untuk membentuk data asli yang tepat sama dari data yang sudah dikompresi. Ada beberapa detail yang hilang selama proses kompresi. Contoh penggunaan algoritma lossy seperti pada data gambar, suara dan video. Karena cara kerja sistem pengelihatan dan pendengaran manusia yang terbatas, beberapa detail dapat dihilangkan, sehingga didapat data hasil kompresi yang seolah-olah sama dengan data asli.

20 7 2. Kompresi Lossless Algoritma kompresi dikatakan lossless atau disebut juga reversible jika dimungkinkan untuk membentuk data asli yang tepat sama dari data yang sudah dikompresi. Tidak ada informasi yang hilang selama proses kompresi dan dekompresi. Teknik ini digunakan jika data tersebut sangat penting, jadi tidak di mungkinkan untuk menghilangkan beberapa detail Pengukuran Kinerja Kompresi Pada kompresi terdapat beberapa faktor penting yang perlu diperhatikan untuk mengukur kualitas dari suatu metode kompresi, serta mendapatkan perbandingan dari kedua metode yang diuji, berikut adalah beberapa pengukuran kinerja kompresi data: 1. Waktu kompresi Pengukuran waktu dapat diukur dari jumlah tahapan komputasi yang dibutuhkan untuk menjalankan algoritma sebagai fungsi dari ukuran masukan n. Ukuran masukan n artinya jumlah data yang diproses oleh sebuah algoritma. 4. Compression Ratio (Cr) Compression ratio (Cr) adalah hasil perbandingan antara ukuran data sebelum dikompresi dengan ukuran setelah data dikompresi. CCCC = uuuuuuuuuuuu dddddddd ssssssssssssss dddddddddddddddddddd uuuuuuuuuuuu dddddddd ssssssssssssss dddddddddddddddddddd (Budiman & Rachmawati,2014) Misalkan terdapat nilai compression ratio sebesar 28. Artinya setelah dikompresi perbandingan ukuran data sebelum dan sesudah dikompresi adalah Space saving (SS) Space saving adalah selisih antara data yang belum dikompresi dengan besar data yang dikompresi dalam satuan bit. uuuuuuuuuuuu dddddddd ssssssssssssss dddddddddddddddddddd SSSS = 11 uuuuuuuuuuuu dddddddd ssssssssssssss dddddddddddddddddddd

21 8 Misalnya terdapat data berukuran 8 mb, setelah dikompresi akan menghasilkan ukuran 2 mb. Maka Space saving adalah 1- ( 2/8) = 0,75 mb. Sehingga akan menghasilkan penghematan ruang sebesar 0,75mb Dekompresi Menurut Sukiman dan Chandra (dalam Umri, 2014), Proses dekompresi secara harfiah merupakan proses yang dilakukan bila data hasil kompresi ingin dikembalikan ke ukuran dan bentuknya semula. Dengan demikian, dekompresi adalah kebalikan dari kompresi data, yaitu dapat mengembalikan data kebentuk semula. Apabila data hasil dekompresi sama seperti data sebelum dikompresi, maka teknik kompresi yang digunakan adalah kompresi lossless. Sedangkan apabila hasil dekompresi tidak sama dengan data sebelum dikompresi, maka teknik yang digunakan adalah kompresi lossy. Tujuan dari dekompresi data adalah untuk mengembalikan data yang telah dikompresi ke bentuk semula. Karena data yang telah dikompresi tidak dapat dibaca tanpa dikembalikan ke dalam bentuk semula. 2.2 File Teks File teks adalah karakter-karakter dari string yang menjadi satu kesatuan. Teks yang memuat banyak karakter di dalamnya selalu menimbulkan masalah pada media penyimpanan dan kecepatan waktu pada saat transmisi data. File teks merupakan file yang berisi informasi-informasi dalam bentuk teks. Data yang berasal dari dokumen pengolah kata, angka yang digunakan dalam perhitungan, nama dan alamat dalam basis data merupakan contoh masukan data teks yang terdiri dari karakter, angka dan tanda baca. Masukan dan keluaran data teks direpresentasi sebagai set karakter atau sistem kode yang dikenal oleh sistem komputer. Ada tiga macam set karakter yang umum digunakan untuk masukan dan keluaran pada komputer, yaitu ASCII, Unicode, dan EBCDIC, ASCII (American Standard Code for Information Interchange) merupakan suatu standar internasional dalam kode huruf dan symbol seperti Hex, dan Unicode tetapi ASCII bersifat lebih universal. ASCII digunakan oleh komputer dan alat komunikasi lain untuk menunjukkan teks. Kode ASCII memiliki komposisi bilanganbiner sebanyak 8 bit, dimulai dari dan

22 9 Total kombinasi yang dihasilkan sebanyak 256, dimulai dari kode 0 hingga 255 dalam sistem bilangan desimal. Unicode adalah suatu standar industri yang dirancang untuk mengizinkan teks dan symbol dari semua sistem tulisan di dunia untuk ditampilkan dan dimanipulasi secara konsisten oleh komputer, EBCDIC ( Extended Binary Code Decimal Interchange Code) merupakan set karakter yang diciptakan oleh komputer merk IBM. EBCDIC terdiri dari 256 karakter yang masing-masing berukuran 8 bit Format Teks Tipe teks merupakan tipe dasar yang sudah sangat dikenal dalam kehidupan seharihari. Tipe teks terdiri dari tipe karakter (char) dan tipe string. Tipe karakter (char) terdiri atas satu huruf, angka, tanda baca, atau karakter khusus seperti c, 1, # dan sebagainya. Tipe string terdiri atas nol atau lebih karakter seperti teks dan algoritma dan sebagainya.contoh format data teks di atas beserta perangkat lunak yang biasa digunakan diantaranya adalah (Erdiansyah, 2014): 1. Format data teks (*.txt) Format data teks merupakan format teks yang digunakan untuk menyimpan huruf, angka, karakter control (tabulasi, pindah baris, dan sebagainya) atau symbol-simbol lain yang biasa digunakan dalam tulisan seperti titik, koma, tanda petik, dan sebagainya. Satu huruf, angka, karakter control atau symbol pada arsip teks memakan tempat satu byte. Berbeda dengan jenis teks terformat yang satu huruf saja dapat memakan tempat beberapa byte menyimpan format dari huruf tersebut seperti font, ukuran, tebal atau tidak dan sebagainya. Kelebihan dari format data teks ini adalah ukuran datanya yang kecil karena tiadanya fitur untuk memformat tampilan teks. Saat ini perangkat lunak yang paling banyak digunakan untuk memanipulasi format data ini adalah Notepad. 2. Format data dokumen (*.doc) Doc merupakan ekstensi arsip dokumen perangkat lunak Microsoft Word yang paling banyak digunakan dalam Menulis laporan, makalah dan sebagainya. Doc merupakan jenis teks terformat yang tidak hanya dapat mengatur tampilan teks seperti styles (font, ukuran huruf, dan sebagainya), namun juga dapat

23 10 menyisipkan gambar. Kekurangan format teks dokumen ini terletak pada ukuran datanya yang besar. 3. Rich text format (*.rtf) Format teks ini dikembangkan oleh Microsoft yang dapat dibaca oleh berbagai macam platform, seperti Windows, Linux, Mac OS dan sebagainya. 2.3 Algoritma GOLDBACH Algoritma Goldbach Code G0 adalah algoritma yang dibuat oleh Peter Fenwick yang dibuat menggunakan conjecture Goldbach. Conjecture Goldbach ini diciptakan oleh Christian Goldbach yaitu salah satu matematikawan terkenal pada abad 17. Conjecture Goldbach berisi setiap bilangan genap lebih besar dari 2 merupakan hasil penjumlahan dari 2 buah bilangan prima (Salomon & Motta 2010).Bilangan prima adalah bilangan bulat yang tepat memiliki dua faktor yaitu 1 dan bilangan itu sendiri. Misalnya, bilangan bulat 3 adalah bilangan yang hanya dapat membagi bilangan 1 dan bilangan itu sendiri. Conjecture Goldbachini bukan sebuah teorema yang dapat dibuktikan kebenarannya. Namun conjecture Goldbach ini adalah dugaan atau pendapat dari para ahli yang benar namun tidak dapat dibuktikan kebenarannya.pada tahun 2001, Peter Fenwick memiliki ide untuk menggunakan conjecture untuk merancang pembuatan kode kompresi file berdasarkan bilangan prima. Bilangan prima tersebut akan dijadikan sebagai pembuatan codeword untuk kompresi data (Salomon, 2007). Bilangan genap > 2 dibuat untuk menentukan 2 buah bilangan prima, bilangan prima ini digunakan untuk membentuk kode stringbit Goldbach kompresi data. Metode yang digunakan untuk menentukan bilangan prima pada penelitian ini adalah dengan metode the sieve of eratosthenes. Metode ini merupakan metode yang paling cepat untuk menemukan bilangan prima. Namun, kebutuhan memorinya yang besar, sehingga hanya dapat dipakai untuk N Lebih dari itu, walaupun kompleksitas waktunya masih cukup baik, tetapi kompleksitas memorinya tidak menunjang, karena jumlah memori yang diperlukan sudah berada dalam jenjang puluhan, bahkan ratusan Megabyte (Christianto, 2011). Karena kode yang digunakan adalah ASCII, maka metode the sieve of eratosthenes cocok untuk penelitian ini

24 11 karena tidak membutuhkan bilangan prima yang besar. Codeword ini dibuat dengan dua buah bilangan prima dengan langkah sebagai berikut: 1. Tentukan nilai n yaitu bilangan bulat positif untuk menentukan encode (M) yaitu 2(n+3). 2. Nilai M akan dibuat penjumlahan dari 2 buah bilangan prima ganjil (M = P i +P j ) dimana nilai bilangan prima pertama(p i ) akan lebih besar dari bilangan prima kedua (P j ) dan selisih antara P i dan P j tidak terlalu besar. 3. Gambarkan nilai M dengan (Pi-1, Pj). 4. Lakukan perulangan untuk mencari kode nilai Pi-1 sampai dengan 0 dimana pada saat perulangan terjadi, nilai code awal adalah 1, jika ditemukan bukan bilangan prima maka dilanjutkan, jika ditemukan bilangan prima ganjil maka code ditambah 0 dan jika ditemukan bilangan prima yang sama dengan Pj maka code ditambah 1. Lakukan perulangan sampai Pi-1 sama dengan Setelah dilakukan perulangan hingga Pi-1 sama dengan 0, maka code yang didapat dibalikkan bentuknya dari kiri kekanan. (Salomon, 2007) Misalnya : n = 6 1. Nilai M = 2(n+3) = 2(6+3) = M = P i +P j ( P i akan lebih besar darip j ) Didapat 18=11+7 atau Bilangan prima yang dipakai adalah 11+7 karena selisih antara 11 dan 7 lebih kecil daripada 13 dan 5. Maka P i = 11 dan P j = 7 3. M = (Pi-1, Pj) = (10, 7) 4. Code = 1 Pi-1 = 10 (lanjutkan karena bukan bilangan prima ganjil) Pi-1 = 9 (lanjutkan karena bukan bilangan prima ganjil) Pi-1 = 8 (lanjutkan karena bukan bilangan prima ganjil) Pi-1 = 7 (karena bilangan prima = Pj, maka code + 1 ) Code = 11 Pi-1 = 6 (lanjutkan karena bukan bilangan prima ganjil) Pi-1 = 5 (karena bilangan prima ganjil, maka code + 0 ) Code = 110 Pi-1 = 4 (lanjutkan karena bukan bilangan prima ganjil) Pi-1 = 3 (karena bilangan prima ganjil, maka code + 0 ) Code = 1100 Pi-1 = 2 (lanjutkan karena bukan bilangan prima ganjil) Pi-1 = 1 (lanjutkan karena bukan bilangan prima ganjil)

25 12 Pi-1 = 0 (lanjutkan karena bukan bilangan prima ganjil) Maka didapat code Code dibalikkan menjadi 0011, maka code untuk n = 6 adalah Agar lebih jelas, berikut hasil pengkodean Goldbach dapat dilihat pada tabel 2.2. Tabel 2.1Goldbach GO Code (Salomon, 2007) N M = 2 ( n + 3 ) Bilangan Prima Pi Pj Goldbach Code Algoritma Goldbach Code G0 ini membuat kode bilangan bulat positif n dengan memeriksa bilangan 2(n+3) dan hasilnya adalah penjumlahan dua buah bilangan prima (Salomon, 2007). Algoritma Goldbach Code G0 adalah dasar dari Algoritma Goldbach G1 Code. Prinsip Algoritma Goldbach G1 Code adalah menentukan dua bilangan prima Pi dan Pj (di mana j) yang i jumlahnya menghasilkan bilangan bulat tertentu, dan mengkodekan pair (i, j-i + 1) dengan dua kode gamma. Jadi, misalnya, n = 100 dapat ditulis sebagai jumlah berikut , , , , , dan Kita memilih = P15 + P16, Menghasilkan pair (15, = 2). Sebagai perbandingan, memilih partisi Goldbach 100 = menghasilkan indeks 2 dan 25, pair (2, ). Perhatikan bahwa i mungkin sama dengan j, karena itulah pair (i, j -i + 1) dan bukan (i, j i).

26 13 Tabel 2.2 Goldbach G1 Code (Salomon, 2007) N Sum Indexes Pair Codeword Len ,1 1,1 1: ,2 1,2 1: ,2 2,1 010: ,3 2,2 010: ,4 2,3 010: ,4 3,2 011: ,4 4, : ,3 011: ,5 4,2 1: Algoritma Unary Codes Unary Code direpresentasikan dalam sebuah string dari n bit 1 diikuti dengan satu bit 0 yang mengakhiri, didefenisikan sebagai n-1 bit 1diikuti satu bit 0. Atau sebaliknya sebagai alternatif dapat juga secara ekuivalen dimulai dari n bit 0 diikuti dengan bit 1 yang mengakhiri yang didefenisikan sebagai n-1 bit 0 diikuti dengan satu bit 1. Tabel 2.3 Tabel Unary Code Kode (n) bit 1 diikuti oleh satu bit 0 Kode (n-1) bit 1 diikuti oleh satu bit 0 Unary code Alternative Berikut adalah daftar frekuensi kemunculan simbol pada pesan yang telah diurutkan descending order berdasarkan frekuensi kemunculan. n merupakan urutan dari frekuensi tertinggi sampai pada frekuensi terendah. Apabila terdapat simbol-simbol yang memiliki frekuensi yang sama, maka simbol-sombol tersebut akan diurutkan berdasarkan urutan kemunculannya pada sebuah string.

27 14 Tabel 2.4Tabel Frekuensi Simbol Algoritma Unary Code Simbol Frequensi N A 15 1 B 7 2 C 6 3 D 6 4 E 5 5 Berikut adalah tabel pengkodean string dari n bit 1 diikuti dengan satu bit 0 yang mengakhiri, didefenisikan n-1 bit 1diikuti satu bit 0. Tabel 2.5 Tabel Pengkodean Algoritma Unary Code Simbol Frequensi n Kode (n-1) bit 1 diikuti oleh satu bit 0 A B C D E

28 BAB 3 ANALISIS DAN PERANCANGAN 3.1. Analisis Sistem Analisis sistem ialah proses identifikasi mengenai hal-hal yang dibutuhkan dan harus ada pada sistem, agar sistem tersebut dapat berjalan sesuai dengan tujuan utama. Analisis sistem dapat dilakukan dengan menentukan apa-ap asaja yang menjadi input dari sistem, proses apa yang dilakukan sistem dan apa yang menjadi output dari sistem tersebut. Untuk menganalisis sebuah sistem ada beberapa hal yang biasa dilakukan, yaitu sebagai berikut: Analisis masalah Untuk mengatasi masalah penyimpanan dan kecepatan akses dalam suatu proses pengiriman data adalah dengan mengkompresi data. Algoritma kompresi data sangat membantu pengguna data untuk memperkecil ukuran data dari data aslinya agar ruang penyimpanan lebih kecil serta memudahkan proses transmisi data. Algoritma Goldbach G1 code dan Unary codes adalah salah satu algoritma kompresi data. Kedua algoritma ini akan dibandingkan dengan beberapa parameter untuk mengetahui algoritma mana yang lebih baik yang digunakan untuk memampatkan data. Diagram Ishikawa yang disebut juga sebagai diagram tulang ikan atau causeand-effect yang merupakan diagram yang menunjukkan kemungkinan dari penyebab suatu masalah dari kejadian yang spesifik (Whitten & Bentley, 2007). Kegunaan diagram Ishikawa secara umum adalah untuk mencegah efek serta mengembangkan kualitas produk. Diagram Ishikawa dapat membantu mengidentifikasi faktor-faktor yang signifikan yang memberi sebuah efek terhadap sebuah event. Untuk membuat diagram Ishikawa, pertama menyatakan masalah dan menggambarkannya dengan menarik tulang utama dengan sub tulang yang mewakili kemungkinan penyebab darisuatu masalah (Whitten & Bentley, 2007).

29 16 Analisis masalah lebih jelas melalui diagram Ishikawa (fishbone diagram) yang dapat dilihat pada gambar 3.1. Material Algoritma File *.txt Tidak ada software yang cocok untuk menkompresi file teks Mesin Sulit untuk menemukan algoritma yang tepat Banyak nya data yang dikumpulkan dengan ukuran user Kompresi Dekompresi Teks Gambar 3.1 Diagram Ishikawa Pada gambar 3.1 terlihat bahwa terdapat 4 penyebab masalah yang ada pada penilitian.masalah utama terdapat pada segiempat paling kanan (fish s head) yaitu kompresi teks dengan menggunakan algoritma yang berhubungan dengan metode, user, material, dan sistem. Garis-garis yang menuju pada masing-masing bagian menunjukkan penyebab-penyebab masalah pada sistem secara rinci.solusi yang ditawarkan dengan memanfaatkan algoritma Goldbach G1 code dan Unary codes, yang mana teks akan dikompresi dengan menggunakan algoritma tersebut Analisis Kebutuhan Analisis kebutuhan adalah sebuah pernyataan dari apa yang harus dilakukan oleh sistem atau karakteristik yang dibutuhkan oleh sistem (Dennis, et al. 2012). proses untuk mendapatkan model serta spesifikasi tentang sistem yang akan dibuat dan menjadi acuan untuk melakukan desain sistem. Inimerupakan langkah awal untuk menentukan sistem seperti apa yang akan dihasilkan ketika membangun sebuah sistem. Analisis kebutuhan dibagi menjadi dua bagian yaitu kebutuhan fungsional dan kebutuhan non-fungsional.

30 17 Kebutuhan fungsional berhubungan langsung dengan proses sistem, dimana membahas tentang layanan sistem yang disediakan dan dapat dilakukan oleh sistem (Dennis, et al. 2012).Dalam pengimplementasian sistem kompresi dan dekompresi teks dengan menggunakan algoritma Goldbach G1 code dan Unary codes ini memiliki kebutuhan fungsional yang harus dipenuhi, antara lain: a. File teks yang akan dikompresi berformat*.txt. b. Proses implementasi pada sistem ini dilakukan dengan melakukan kompresi dan dekompresi menggunakan algoritma Goldbach G1 code dan Unary codes. c. Sistem akan menampilkan teks yang telah berhasil dikompresi dan berusaha mengembalikan teks kembali dengan proses dekompresi. 1. Kebutuhan Non-fungsional Kebutuhan non-fungsional adalah kebutuhan yang harus dipenuhi agar sistem yang dirancang mendapat umpan balik yang baik dari pengguna sistem. Kebutuhan non-fungsional mengidentifikasi batasan bahwa sebuah sistem harus memuaskan. Kebutuhan non-fungsional yang harus dipenuhi sistem yan dirancang adalah sebagai berikut : a. Performa Sistemharusmampumelaksanakansetiaptugassecarautuhdalamselangwaktu yang tidak terlalu lama sesuai dengan ukuran data input yang diberikan. b. Usability Sistem harus dirancang sesederhana mungkin agar memudahkan pengguna dalam menggunakan atau menjalankan aplikasi tersebut. c. Informasi Sistem harus mampu menyediakan informasi tentang data yang akan digunakan pada sistem. d. Kontrol Sistem yang telah dibangun harus tetap dikontrol setelah selesai dirancang agar fungsi dan kinerja sistem tetap terjaga dan dapat memberikan hasil yang sesuai dengan keinginan pengguna. e. Pelayanan Sistem yang telah dirancang bisa dikembangkan ketingkat yang lebih kompleks lagi bagi pihak-pihak yang ingin mengembangkan sistem tersebut.

31 Analisis Proses Analisis proses merupakan suatu tahapan untuk menyelesaikan suatu masalah tertentu dengan cara memahami dan menguraikan proses secara spesifik. Analisis proses dilakukan pada tahap pemodelan sistem. Dalam penelitian ini, terdapat dua proses utama, yaitu proses kompresi dan dekompresi file menggunakan algoritma Goldbach G1 Code dan Unary Codes dengan beberapa parameter pembanding. Proses kompresi dan dekompresi pada metode ini serupa, namun nilai dari karakter yang akan digunakan akan berbeda menurut perhitungan pada masingmasing algoritma. Sistem akan membaca string yangtelah dimasukkan kedalam sistem, kemudian sistem membuat tabel karakter dan frekuensi dari masing-masing karakter yang diurutkan berdasarkan frekuensi yang paling besar. Setelah diurutkan, sistem memilih algoritma yang digunakan untuk membentuk kode kompresi dengan algoritma Goldbach G1 Code atau Unary Codes berdasarkan banyaknya karakter yang dibuat pada tabel karakter. Hasil pembentukkan gabungan kode dengan algoritma tersebut, akan membentuk suatufilebaru yang telah dikompresi. Pada proses dekompresi, sistem akan membaca string yang berisi bit-bit hasil kompresi dan membuat tabel karakter dan kode algoritma. Setelah itu, sistem melakukan dekompresi dengan memilih algoritma yang digunakan untuk mengubah string yang berisi bit-bit tersebut ke dalam bentuk karakter semulaberdasarkan banyaknya karakter yang dibuat pada tabel karakter. 1. Analisis proses kompresi file teks dengan algoritma Goldbach G1 Code Berikut adalah contoh dari proses kompresi file teks dengan algoritma Goldbach G1 Code. Sebuah fileteks yang berisi string WINDA APRIANTI. Untuk mengetahui ukuran filetekstersebut, dapat dilihat pada tabel 3.1.

32 19 Karakter ASCII (Decimal) Tabel 3.1. String sebelum dikompresi ASCII (Binary) Bit Frekuensi bitx Frek W I N D A Sp P R T Jumlah 112 bit Dari tabel 3.1 dapat dilihat bahwa bentuk string bit dari string WINDA APRIANTI sebelum dikompresi adalah Satu karakter berdasarkan kode ASCII, bernilai delapan bit dalam biner, sehingga 14 karakter padafile teks mempunyai ukuran 112 bit. Sebelum proses kompresi dilakukan, karakter pada tabel 3.1 diurutkan berdasarkan karakter yang memiliki frekuensi terbesar ke terkecil. Proses kompresi dengan algoritma Goldbach G1 Code dapat dilihat dengan tabel 3.2. Tabel 3.2. String setelah dikompresi dengan Goldbach G1 Code Char Frek n N Sum Indexes Pair Codeword Length Total bit I ,1 1,1 1:1 2 6 A ,2 1,2 1: N ,2 2,1 010:1 4 8 W ,3 2,2 010: D ,4 2,3 010: Sp ,4 3,2 011: P ,4 4, :1 6 6

33 20 Lanjutan Tabel 3.2. String setelah dikompresi dengan Goldbach G1 Code R ,3 011: T ,7 1,7 1: JUMLAH 62 Berdasarkan tabel 3.2 dapat dilihat bahwa bentuk stringbit dari string WINDA APRIANTI setelah dikompresi adalah 010:0101:1010:1010:0111:010011:0101: :1011:0111:11:010010:11:001111:1. Satu karakter berdasarkan algoritma Goldbach G1 Code memiliki jumlah bit yang berbeda berdasarkan bilangan prima yang didapat. Sehingga fileteks dengan 14 karakter mempunyai ukuran 62 bit setelah dikompresi. Namun, untuk men-decodestring yang telah dikompresi, dibutuhkan padding bit dan flag bit. Padding bit adalah bit yang ditambahkan agar bit yang lain dapat dibagi 8, sedangkan flag bit adalah biner dari dari padding bit sebagai penanda yang menunjukkan tambahan bit dari padding bit. Setalah ditambahkan padding bit dan flag bit, maka string bit setelah dikompresi adalah: String bit padding bit flag bit Maka jumlah string bit yang akan di decode adalah 72 bit. Untuk men-decode string bit tersebut menjadi karakter ASCII, maka setiap 8 bit dari string bit tersebut diubah menjadi nilai desimal, dan nilai desimal tersebut dibaca dalam karakter ASCII Dari hasil kompresi file dengan algoritma Goldbach G1 Code dapat dihitung kinerja dari kompresi yaitu: a. Compression ratio (Cr) CCCC = uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuhdddddddddddddddddddd 112 bbbbbb CCCC = 72 bbbbbb CCCC = 1,55 bit 2

34 21 b. Space saving (SS) SSSS = 1 SSSS = SSSS = 0,36 bbbbbb uuuuuuuuuuuu dddddddd ssssssssssssh dddddddddddddddddddd uuuuuuuuuuuu dddddddd ssssssssssssss dddddddddddddddddddd 2. Analisis proses kompresi file teks dengan algoritma Unary Code Berikut adalah proses kompresi dengan algoritma Unary Codes dapat dilihat pada tabel 3.3. Tabel 3.3. String setelah Dikompresi dengan Unary Codes Char Frek N Unary Codes Length Total bit I A N W D Sp P R T Jumlah bit x frek 54 Berdasarkan tabel 3.3 dapat dilihat bahwa bentuk string bit dari string WINDA APRIANTI setelah dikompresi adalah Satu karakter berdasarkan algoritma Unary Codes memiliki jumlah bit yang berbeda berdasarkan bilangan prima yang didapat. Sehingga fileteks dengan 14 karakter mempunyai ukuran 54 bit setelah dikompresi. Namun, untuk men-decodestring yang telah dikompresi, dibutuhkan padding bit dan flag bit. Padding bit adalah bit yang ditambahkan agar bit yang lain dapat dibagi 8, sedangkan flag bit adalah biner dari dari padding bit sebagai penanda yang

35 22 menunjukkan tambahan bit dari padding bit. Setalah ditambahkan padding bit dan flag bit, maka string bit setelah dikompresi adalah: String bit padding bit flag bit Maka jumlah string bit yang akan di decode adalah 64 bit. Untuk men-decode string bit tersebut menjadi karakter ASCII, maka setiap 8 bit dari string bit tersebut diubah menjadi nilai desimal, dan nilai desimal tersebut dibaca dalam karakter ASCII Dari hasil kompresi file dengan algoritma Unary Codes dapat di hitung kinerja dari kompresi yaitu: a. Compression Ratio (Cr) CCCC = CCCC = uuuuuuuuuuuu dddddddd ssssssssssssss dddddddddddddddddddd uuuuuuuuuuuu dddddddd ssssssssssssh dddddddddddddddddddd 112 bbbbbb 64 bbbbbb CCCC = 1,75 bbbbbb b. Space Saving (SS) SSSS = 1 SSSS = SSSS = 0,43 bbbbbb uuuuuuuuuuuu dddddddd ssssssssssssh dddddddddddddddddddd uuuuuuuuuuuu dddddddd ssssssssssssss dddddddddddddddddddd

36 23 3. Analisis proses dekompresi file teks Berikut adalah proses dekompresi file teks secara umum: Tabel 3.4 String setelah dikompresi dengan Goldbach G1 Code Char Frek n N Sum Indexes Pair Codeword Length Total bit I ,1 1,1 1:1 2 6 A ,2 1,2 1: N ,2 2,1 010:1 4 8 W ,3 2,2 010: D ,4 2,3 010: Sp ,4 3,2 011: P ,4 4, :1 6 6 R ,3 011: T ,5 4,2 1: JUMLAH 62 String bit setelah dikompresi dengan algoritma Goldbach G1 Code adalah adalah 010:0101:1010:1010:0111:010011:0101: :1011:0111:11:010010:11: :1. Untuk mengembali- kan kedalam bentuk semula, maka diperiksa string bit tersebut dengan tabel Goldbach G1 Code. 010:010 1:1 010:1 010:011 1: :010 1: :1 011:011 1:1 1: :1 1: :1 W I N D A sp A P R I A N T I

37 24 Tabel 3.5. String setelah Dikompresi dengan Unary Codes Char Frek n Unary Codes Length Total bit I A N W D Sp P R T Jumlah bit x frek 54 String bit setelah dikompresi dengan algoritma Unary Codes adalah Untuk mengembali- kan kedalam bentuk semula, maka diperiksa string bit tersebut dengan tabel Unary Codes W I N D A sp A P R I A N T I Pemodelan Sistem Pemodelan sistem merupakan proses membangun dan membentuk sebuah representasi atau gambaran bagian-bagian yang terdapat didalam sistem yang akan dirancang sesuai dengan kebutuhan.pemodelan perangkat lunak digunakan untuk mempermudah langkah berikutnya dari pengembangan sebuah sistem sehingga lebih terencana (Rosa & Shalahuddin, 2013). Salah satu perangkat pemodelan adalah UML (Unified Modeling Language).Proses pemodelan dan perancangan sistem ini akan dilakukan menggunakan teknik pemodelan UML (Unified Modeling Language).

38 Use case diagram Use case adalah gambaran urutan aksi yang dilakukan oleh sistem dan menghasilkan hasil kepada seorang pengguna serta sekumpulan interaksi antara seorang pengguna dengan sebuah sistem. Use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem dan siapa saja yang berhak menggunakan fungsi-fungsi itu(rosa & Shalahuddin, 2013).Use case diagram terdiri dari diagram untuk use case dan actor. Actor merepresentasikan user yang berinteraksi terhadap sistem. Use case merepresentasikan operasi-operasi yang dilakukan oleh actor.use Case Diagram untuk sistem dalam penelitian ini dapat dilihat pada gambar 3.2. Gambar 3.2Use case diagram sistem Use case pada gambar 3.2 menjelaskan gambaran fungsionalitas dari suatu sistem sehingga user dapat memahami kegunaan sistem yang akan dibangun.user dapat melakukan proses kompresi dan dekompresi. Proses kompresi dilakukan dengan cara memilih gambaryang akan dikompresi kemudian memilih algoritma mana yang akan dipakai untuk proses kompresi. Setelah algoritma dipilih dan algoritma kompresi dijalankan, kemudian user dapat menyimpan string bit setelah

39 26 dikompresi. Pada proses dekompresi, user dapat memilih teks yang akan didekompresi kemudian proses dekompresi dapat dijalankan. Setelah proses dekompresi selesai, teksdapat disimpan kembali Activity diagram Activity diagram adalah gambaran dari workflow (alur kerja) atau aktivitas dari sebuah sistem yang ada pada perangkat lunak. Aktivitas yang dimaksud adalah menggambarkan aktivitas yang dapat dilakukan oleh sistem, bukan apa yang dilakukan oleh actor (Rosa & Shalahuddin, 2013). 1. Activity diagram pada proses kompresi Gambar 3.3Activity Diagram proses kompresi

40 27 2. Activity diagram pada proses dekompresi Gambar 3.4 Activity diagram proses dekompresi Sequence diagram Sequence diagram adalah gambaran kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek (Rosa & Shalahuddin, 2013). Untuk menggambarkan sequence diagram harus diketahui objek-objek yang terlibat dalam sebuah use case serta dibutuhkan untuk melihat skenario yang ada pada use case.

41 28 1. Sequence diagram pada proses kompresi Gambar 3.5 Sequence diagram proses kompresi 2. Sequence diagram pada proses dekompresi Gambar 3.6 Sequence diagram proses dekompresi

42 Flowchart Flowchart (diagram alir) merupakan diagram yang menunjukan langkah-langkah sistematis yang dilakukan. Dalam perancangan sistem ini ada beberapa flowchart yang akan dibuat, yaitu : flowchart sistem, flowchart kompresi dan dekompresi teks, flowchart algoritma Goldbach G1 Code,flowchart algoritma Unary codes Flowchart gambaran sistem secara umum Mulai Mulai Inputteks (*txt) Input teks (*txt) Kompresi dengan Goldbach G1 Code danunary Codes Dekompresi teks Output teks dan Hasil Pengukuran, Rc,SS,Time Output teks Selesai Selesai a. Kompresi b. Dekompresi Gambar 3.7Flowchart gambaran sistem secara umum

43 Flowchart kompresi dan dekompresi Gambaranflowchartkompresi dan dekompresi teksdapat dilihat pada gambar 3.8. Mulai Mulai Inputteks (*txt) Inputteks (*txt) Baca string Baca string Urutkan karakter, berdasarkan frekuensi karakter, secara descending Buat tabel algoritma Ubah karakter sesuai dengan tabel kode algoritma algoritma Ubah karakter sesuai dengan table kode algoritma Output teks dekompresi Output teks kompresi Selesai Selesai a. Kompresi b. Dekompresi Gambar 3.8Flowchart kompresi dan dekompresi teks

44 Flowchart algoritma Goldbach G1 Code Mulai Inputteks Baca setiap karakter pada teks Hitung frekuensi kemunculan setiap karakterdan Urutkan frekuensi kemunculan secara descending pada file teks Perolehan n Hitung sum dari nilai N Tentukan bilangan prima Pi dan Pj Hitung pair dari nilai indeks Pembentukan kode Goldbach G1 code Output teks hasil kompresi Selesai Gambar 3.9 Flowchart Proses Kompresi Goldbach G1 code

45 Perancangan flowchart algoritma UnaryCodes Mulai Input teks Baca setiap karakter pada teks Hitung frekuensi kemunculan setiap simbol pada file teks Urutkan frekuensi kemunculan secara descending Perolehan n Pembentukan kode Unary koding Output teks hasil kompresi Selesai Gambar 3.10 Flowchart Proses Kompresi Unary Codes

46 Perancangan Sistem Perancangan sistem adalah spesifikasi dari solusi berbasis komputer yang digambarkan secara detail danjelas, yang sering disebut juga sebagai physical design. Perancangan sistem merupakan wujud dari implementasi sistem secara teknis (Whitten & Bentley, 2007). Perancangan sistem dilakukan dengan merancang antarmuka (interface) dengan menggunakan bahasa pemrograman C#. Merancang interface merupakan tahap penting dalam merancang sebuahsistem. Interface mempermudah userdalam memahami dan menggunakan sistem. Sistem yang dirancangakan memiliki4 buah interface, yaitu beranda, menu, bantuan dan tentang Form beranda Form beranda adalah halaman awal ketika sistem dibuka. Form ini berisi pilihan menu yang ada pada sistem, keterangan judul, nama pembuat sistem, logo fakultas serta jurusan pembuat sistem. Rancangan form beranda dapat dilihat pada gambar Gambar 3.11 Perancangan Form Beranda

47 34 Keterangan: 1. Tab beranda digunakan untuk menampilkan tampilan beranda ketika sistem dibuka. 2. Tab menu digunakan untuk memilih menu kompresi atau menu dekompresi. 3. Tabbantuan digunakan untuk menampilkan menu bantuan pada sistem. 4. Tab tentang digunakan untuk menampilkan tentang bantuan pada sistem. 5. Label text berisi keterangan dari sistem. 6. Picture box berisi logo fakultas sebagai keterangan dari sistem Form menu Form ini akan tampil ketika user telah memilih tab menu kemudian memilih sub menu kompresi. User dapat mengkompresi teksdan dapat memilih algoritma apa yang akan dipakai untuk kompresi teks.rancangan form kompresi dapat dilihat pada gambar Gambar 3.12 Perancangan form kompresi dan dekompresi

48 35 Keterangan: 1. Tabcontroldigunakanuntukmemilihhalaman yang ingindiproses. 2. Button cari file digunakan untuk mengambil teks. 3. Textboxdigunakan untuk menampilkan teks. 4. Textbox digunakan untuk menampilkan ukuran teks. 5. Radiobutton digunakan untuk memilih algoritma kompresi dan dekompresi. 6. Textbox digunakan untuk menampilkan hasil kompresi dan dekompresi. 7. Textbox digunakan untuk menampilkan ukuran teks setelah kompresi dan dekompresi. 8. Textbox digunakan untuk menampilkan hasil compression ratio. 9. Textbox digunakan untuk menampilkan hasil space saving. 10. Textbox digunakan untuk menampilkan hasil time kompresi dan dekompresi. 11. Button reset digunakan untuk menghapus semua isi textbox. 12. Button simpan digunakan untuk menyimpan teks setelah dikompresi Form bantuan Form ini berisi tentang cara mengkompresi dan mendekompresi teks apabila user kebingungan menggunakan sistem, sehingga user dapat dengan mudah memahami penggunaan sistem. Rancangan formbantuan dapat dilihat pada gambar Gambar 3.13 Perancangan form bantuan

49 36 Keterangan: 1. Tabcontrol digunakan untuk memilih halaman yang ingindiproses. 2. Groupbox digunakan untuk meletakkan textboxt. 3. TextBox digunakan untuk menampilkan bantuan penggunaan sistem Form tentang Form tentang ini berisi informasi dari sistem serta dari pembuat sistem. Rancangan form tentang dapat dilihat pada gambar Gambar 3.14 Perancangan form tentang Keterangan: 1. Tab control digunakan berfungsi untuk memilih halaman yang ingin diproses. 2. Label yang berisi keterangan dari sistem ini.

50 BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM 4.1. Implementasi Sistem Pada tahap ini dilakukan implementasi sistem yang merupakan lanjutan dari tahap analisis dan perancangan sistem. Sistem ini dibangun dengan bahasa pemrograman C#. Dalam sistem ini terdapat 4 form yaitu form beranda, form kompresi dan dekompresi, form bantuan dan form tentang sistem Form menu beranda Form beranda adalah halaman awal ketika sistem dibuka. Form ini berisi pilihan menu yang ada pada sistem, keterangan judul, nama pembuat sistem, logo fakultas serta jurusan pembuat sistem. Tampilan form beranda dapat dilihat pada gambar 4.1. Gambar 4.1 Tampilan form beranda

51 Form menu kompresi dan dekompresi Form ini akan tampil ketika user telah memilih tab menu. User dapat mengkompresi dan mendekompresi file dan dapat memilih algoritma yang akan dipakai untuk. Pada form ini terdapat beberapa button (tombol), textbox, radiobuttonserta label. Terdapat beberapa button yaitu button cari file, button kompresi,button dekompresi,button simpan dan button reset. Form ini dibagi dalam dua fungsi yaitu kompresi dan dekompresi. Pada kompresi Button cari file berfungsi untuk mencari file yang akan dikompresi. Setelah file didapat, maka akan muncul nama file serta akan tampil isi filedan ukuran file didalam textbox. Untuk mengkompresi file, terdapat radiobutton untuk memilih algoritma yang akan dipakai untuk mengkompresi file. Button kompresi berfungsi untuk mengkompresi file yang telah dipilih. Ketika button kompresi ditekan, maka terjadi proses kompresi yang akan menghasilkan keluaran string bit dan ukuran file setelah dikompresi serta analisis parameter pembanding. Untuk mengkompresi ulang, diklik button reset. Pada dekompresi Fungsi button cari file yaitu untuk mencari file yang akan didekompresi. Setelah file didapat, maka akan muncul nama file serta akan tampil isi file dan ukuran file didalam textbox. Untuk mendekompresi file, button dekompresi di tekan, maka terjadi proses dekompresi yang akan menghasilkan keluaran string dan ukuranfile semula. Untuk mendekompresi ulang, tekan buttonreset. Tampilan form menu dapat dilihat pada gambar 4.2. Gambar 4.2 Tampilan form menu

52 Form menu bantuan Form ini berisi tentang cara mengkompresi dan mendekompresi file apabila user kebingungan menggunakan sistem, sehingga user dapat dengan mudah memahami penggunaan sistem. Tampilanform bantuan dapat dilihat pada gambar 4.3. Gambar 4.3 Tampilan form menu bantuan Form menu tentang Form tentang ini berisi informasi dari sistem serta dari pembuat sistem. Tampilan form tentang dapat dilihat pada gambar 4.4. Gambar 4.4 Tampilan form menu tentang

53 Pengujian Sistem Tahap pengujian merupakan tahap setelah implementasi sistem. Tahap ini mengidentifikasi hasil dari implementasi sistem, apakah sistem yang dirancang berjalan sesuai dengan fungsi yang sebelumnya telah ditetapkan pada tahap analisis sistem. Pengujian sistem ini dilakukan untuk mengetahui algoritma mana yang lebih baik untuk kompresi file berekstensi.rtf. Pada tahap ini, dilakukan 4 proses pengujian, yaitu pengujian kompresi file dengan algoritma Goldbach G1 Code, pengujian kompresi file dengan algoritma Unary Codes, pengujian dekompresi dengan algoritmagoldbach G1 Code, dan pengujian dekompresi file dengan algoritma Unary Codes Pengujian kompresi dengan algoritma Goldbach G1 Code Tahap awal untuk melakukan proses kompresi adalah memilih tab menu dan sub menu kompresi. Setelah itu, tekan buttoncari file untuk memilih file yang akan dikompresi. Setelah file terpilih, akan muncul nama,ukuran dan isi dari file, dapat dilihat seperti gambar 4.5. Gambar 4.5 Tampilan isi file.txt yang akan dikompresi Untuk mengkompresi filedengan algoritma Goldbach G1 Code, dapat memilih algoritma Goldbach pada groupbox. Kemudian tekan button kompresi, dan dapat dilihat hasil dari kompresi dengan Goldbach G1 Code pada gambar 4.6.

54 41 Gambar 4.6 Tampilan hasil kompresi dengan algoritma Goldbach G1 Code Setelah button kompresi ditekan, maka akan menghasilkan hasil kompresi seperti pada gambar 4.6. Ditampilkan hasil kompresi string bit dengan algoritma Goldbach G1 Code, ukuran file setelah dikompresi serta nilai compression ratio, space savingdan waktu kompresi. Untuk menyimpan string hasil kompresi, maka tekan button simpan, kemudian isi nama file dan letak didirektori penyimpanan sesuai dengan yang diinginkan. Agar lebih jelas, dapat dilihat pada gambar 4.7.

55 42 Gambar 4.7 Tampilan file hasil kompresi yang akan disimpan File yang tersimpan berisi string setelah dikompresi dan tabel kode dari algoritma. Untuk melihat isi file setelah dikompresi, dapat dilihat menggunakan notepad atau notepad++, gambar 4.8 berisi file yang telah dikompresi dengan algoritma Goldbach G1 Code. Gambar 4.8 Isi file yang telah dikompresi Setelah file hasil kompresi disimpan, untuk mengatur ulang atau mengkompresi ulang file yang berbeda, dapat menekan button reset.

56 Pengujian kompresi dengan algoritma Unary Codes Pada umumnya, pengujian kompresi dengan algoritma Unary Codessama dengan pengujian pada algoritma Goldbach G1 Code, yaitu memilih algoritma pada groupbox, untuk mengkompresi filedengan algoritma Unary Codes, dapat memilih algoritma Unary codes pada groupbox. Kemudian tekan button kompresi, dan dapat dilihat hasil dari kompresi dengan Unary Codes pada gambar 4.9. Gambar4.9 Tampilan hasil kompresi dengan algoritma Unary Codes Sama seperti algoritma Goldbach G1 Code, untuk menyimpan string setelah dikompresi dapat menekan button simpan. Isi file yang telah disimpan adalah dalam bentuk string yang telah dikompresi. Dan untuk mengatur ulang file yang akan dikompresi, dapat menekan button reset Pengujian dekompresi filedengan algoritma Goldbach G1 Code Untuk melakukan proses dekompresi, teks yang telah dikompresi sebelumnya otomatis muncul di textbox dekompresi, dapat dilihat seperti gambar 4.10.

57 44 Gambar 4.10 Tampilan isi file yang akan didekompresi Untuk mengdekompresi filedengan algoritma Goldbach G1 Code, dapat memilih algoritma Goldbach pada groupbox. Kemudian tekan button dekompresi, dan dapat dilihat hasil dari dekompresi dengan Goldbach G1 Code pada gambar Gambar 4.11 Tampilan hasil dekompresi Pengujian dekompresi file dengan algoritma Unary Codes Pada umumnya, pengujian dekompresi dengan algoritma Unary Codes sama dengan pengujian pada algoritma Goldbach G1 Code, yaitu memilih algoritma pada groupbox,

58 45 untuk mendekompresi file dengan algoritma Unary Codes, dapat memilih algoritma unary codes pada groupbox. Kemudian tekan button dekompresi, dan dapat dilihat hasil dari dekompresi dengan Unary Codes pada gambar Gambar 4.12 Tampilan hasil dekompresi 4.2 Hasil Pengujian Isi file pengujian Isi file pengujian kompresi ini dibuat agar memudahkan dalam menganalisis data. File yang akan diuji berupa file dengan 1 variasi karakter, penambahan 1 variasi karakter dan perulangan karakter. Berikut adalah tabel 4.1, 4.2 dan 4.3 yang berisi file pengujian 1 variasi karakter, 100 karakter dengan penambahan 1 variasi karakter dan 10 variasi karakter kelipatan 20 karakter. Frekuensi Karakter Tabel 4.1. Isi File.txt 1 Variasi Karakter Isi File Variasi Karakter 1 a 1 2 aa 1 3 aaa 1 4 aaaa 1 5 aaaa 1

59 46 Lanjutan Tabel 4.1. Isi File.txt 1 Variasi Karakter 6 aaaaaa 1 7 aaaaaaa 1 8 aaaaaaaa 1 9 aaaaaaaaa 1 10 aaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1 Frequensi karakter Tabel 4.2. Isi File.txt Penambahan 1 Variasi Karakter Isi File aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabb bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb bb 100 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbb bbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccccc 100 aaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbb bcccccccccccccccccccccccccddddddddddddddddddddddd dd 100 aaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbccccccccc cccccccccccddddddddddddddddddddeeeeeeeeeeeeeeeeee ee 100 aaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbcccccccccccccccc cdddddddddddddddddeeeeeeeeeeeeeeeeffffffffffffffff 100 aaaaaaaaaaaaaabbbbbbbbbbbbbbccccccccccccccddddddd dddddddeeeeeeeeeeeeeefffffffffffffffggggggggggggggg 100 aaaaaaaaaaaabbbbbbbbbbbbccccccccccccdddddddddddde eeeeeeeeeeefffffffffffffggggggggggggghhhhhhhhhhhhhh 100 aaaaaaaaaaabbbbbbbbbbbcccccccccccdddddddddddeeeee eeeeeefffffffffffggggggggggghhhhhhhhhhhiiiiiiiiiiii 100 aaaaaaaaaabbbbbbbbbbccccccccccddddddddddeeeeeeeee effffffffffgggggggggghhhhhhhhhhiiiiiiiiiijjjjjjjjjj 100 aaaaaaaaabbbbbbbbbcccccccccdddddddddeeeeeeeeeffffff fffggggggggghhhhhhhhhiiiiiiiiijjjjjjjjjkkkkkkkkkk Variasi Karakter

60 47 Lanjutan Tabel 4.2. Isi File.txt Penambahan 1 Variasi Karakter 100 aaaaaaaabbbbbbbbccccccccddddddddeeeeeeeeffffffffggg ggggghhhhhhhhiiiiiiiiijjjjjjjjjkkkkkkkkklllllllll 100 aaaaaaabbbbbbbcccccccdddddddeeeeeeefffffffggggggghh hhhhhiiiiiiiijjjjjjjjkkkkkkkkklllllllllmmmmmmmmmm 100 aaaaaaabbbbbbbcccccccdddddddeeeeeeefffffffggggggghh hhhhhiiiiiiijjjjjjjkkkkkkklllllllmmmmmmmmnnnnnnnn Jumlah karakter Tabel 4.3. Isi File.txt Perulangan Karakter Isi File Variasi Karakter 20 abcdefghijabcdefghij abcdefghijabcdefghijabcdefghijabcdefghij abcdefghijabcdefghi abcdefghijabcdefghij abcdefghijabcdefghij abcdefghijabcdefghijabcdefghijabcdefghij abcdefghijabcdefghijabcdefghijabcdefghij abcdefghijabcdefghijabcdefghijabcdefghij abcdefghijabcdefghijabcdefghijabcdefghij abcdefghijabcdefghij Hasil pengujian Dengan menggunakan isi file pengujian File.txt 1 Variasi Karakter dengan frekuensi dan variasi karakter yang ada pada tabel 4.1, maka didapat hasil pengujian File.txt 1 Variasi Karakter menggunakan algoritma Goldbach G1 Code dan Unary Codes pada tabel 4.4 dan 4.5. Tabel 4.4 Hasil pengujian 1 Variasi Karakter Algoritma Goldbach G1 Code Frekuensi Variasi Karakter Karakter Uk.sebelum Dikompresi (bit) Uk.setelah Dikompresi (bit) Cr SS Time ,5-1 3, , ,5 33,3 4, ,6 40 1,2

61 48 Lanjutan Tabel 4.4 Hasil pengujian 1 Variasi Karakter Algoritma Goldbach G1 Code , ,3 57 0, ,6 62,5 1, , , ,5 60 4, ,8 74 5,2 Rata-rata 22,05 480,8 31,1 Tabel 4.5 Hasil Pengujian 1 Variasi Karakter dengan Algoritma Unary Codes Frekuensi Variasi Karakter Karakter Uk.sebelum Dikompresi (bit) Uk.setelah Dikompresi (bit) Cr SS Time ,5-1 2, , ,5 33,3 0, , ,5 60 0, , ,5 71,4 0, , ,6 0, ,3 70 0, , ,60 Rata-rata 31,44 579,47 8,13 Nilai space saving pada frekuensi karakter 1 bernilai negatif karena ukuran data setelah dikompresi lebih besar dari ukuran data sebelum dikompresi. Ini disebabkan karena pada program dberikan padding bit dan flag bit. Ketika jumlah file setelah dikompresi adalah 1, maka harus ditambah padding bit 0 sebanyak 7 bit agar bit tersebut dapat diubah kedalam ASCII.

62 49 Setelah melakukan pengujian kompresi dengan uji File.txt 1 Variasi Karakter, maka untuk memudahkan melihat perbandingan hasil pengujian dari algortima Goldbach G1 Code dan Unary Codes dibuat dalam bentuk grafik. Dari tabel 4.4 dan 4.5 dibuat grafik perbandingan hasil pengujian kompresi dengan file.txt 1 variasi karakter berdasarkan parameter pembanding yaitu compression ratio (Cr), space saving (SS) dan time seperti pada gambar 4.13, gambar 4.14, dan gambar Compression Ratio Compression Ratio (Cr) 4,5 4 3,5 3 2,5 2 1,5 1 0, Frekuensi karakter Goldbach Unary codes Gambar 4.13 Grafik Compression Ratio 1 Variasi Karakter Gambar 4.13 menunjukkan grafik compression ratio untuk 1 Variasi Karakter pada algoritma Goldbach G1 Code dan Unary Codes dan dapat diambil kesimpulan bahwa compression ratio hasil kompresi dengan algoritma Unary Codes adalah lebih baik dari pada algoritma Goldbach G1 Code. Karena nilai CR dari Goldbach G1 Code lebih rendah dari pada nilai CR dari Unary Codes, artinya nilai compression ratio berbanding lurus dengan frekuensi karakter.

63 Space Saving 100 Space Saving (SS) Goldbach Unary Codes Frequensi karakter Gambar 4.14 Grafik Space Saving 1 Variasi Karakter Gambar 4.14 menunjukkan grafik space saving untuk 1 variasi karakter pada algoritma Goldbach G1 Code dan Unary Codes dan dapat diambil kesimpulan bahwa space saving hasil kompresi dengan algoritma Unary Codes lebih baik dari algoritma Goldbach G1 Code, karena memiliki rata-rata nilai SS yang lebih tinggi. Nilai space saving dari kedua algoritma cenderung semakin besar ketika jumlah karakter string semakin besar. Artinya nilai space saving pada File.txt 1 variasi karakter berbanding lurus dengan frekuensi karakter. 12 Waktu kompresi Compression Ratio (Cr) Goldbach Unary codes Frekuensi karakter Gambar 4.15 Grafik Waktu Kompresi 1 Variasi Karakter

64 51 Gambar 4.15 menunjukkan grafik waktu kompresi untuk 1 variasi karakter pada algoritma Goldbach G1 Code dan Unary Codes dan dapat diambil kesimpulan bahwa waktu kompresi dengan algoritma Goldbach G1 Codelebih lama dari pada algoritma Unary Codes. Dengan menggunakan 100 Karakter dengan penambahan 1 variasi karakter yang ada pada tabel 4.2, maka didapat hasil pengujian Penambahan variasi karakter menggunakan algoritma Goldbach G1 Code dan Unary Codes pada tabel 4.6 dan 4.7. Tabel 4.6Hasil Pengujian PenambahanVariasi Karakter dengan Algoritma Goldbach G1 Code Variasi karakter Frekuensi karakter Uk.sebelum Dikompresi (bit) Uk.setelah Dikompresi (bit) Cr SS Time ,8 74 5, ,5 61 2, ,3 57 3, ,9 49 3, ,7 44 7, ,6 41 3, ,6 38 3, ,5 37 3, ,5 35 6, ,4 31 7, ,4 29 6, ,3 27 3, ,3 26 8, ,2 23 5,5 Rata-rata 30, ,9

65 52 Tabel 4.7 Hasil Pengujian Penambahan Variasi Karakter dengan Algoritma Unary Codes Variasi karakter Frekuensi karakter Uk.sebelum Dikompresi (bit) Uk.setelah Dikompresi (bit) Cr SS Time ,1 86 2, , ,8 74 2, , ,5 65 2, ,2 55 1, , ,7 44 2, , , ,9 30 2, ,3 24 4, ,2 19 5, ,1 16 5, ,06 5,9 5,8 Rata-rata 35,26 651,9 69,5 Setelah melakukan pengujian kompresi dengan Penambahan variasi karakter, maka untuk memudahkan melihat perbandingan hasil pengujian dari algortima Goldbach G1 Code dan Unary Codes dibuat dalam bentuk grafik. Dari tabel 4.6 dan 4.7 dibuat grafik perbandingan berdasarkan parameter pembanding yaitu compression ratio (Cr), space saving (SS) dan time seperti pada gambar 4.16, gambar 4.17, dan gambar 4.18.

66 53 Compression Ratio (Cr) Compression Ratio Variasi karakter Goldbach Unary codes Gambar 4.16 Grafik Compression Ratio Penambahan Variasi Karakter Gambar 4.15 menunjukkan grafik compression ratio untuk penambahan variasi karakter pada algoritma Goldbach G1 Code dan Unary Codes dan dapat diambil kesimpulan bahwa compression ratio hasil kompresi dengan algoritma Unary Codes adalah lebih baik dari pada algoritma Goldbach G1 Code. Karena, nilai CR dari Goldbach G1 Code lebih rendah dari pada nilai CR dari Unary Codes. Artinya nilai compression ratio berbanding terbalik dengan variasi karakter. 100 Space Saving Space Saving (SS) Goldbach Unary Codes Variasi karakter Gambar 4.17 Grafik Space Saving Penambahan Variasi Karakter

67 54 Gambar 4.17 menunjukkan grafik space saving untuk penambahan variasi karakter pada algoritma Goldbach G1 Code dan Unary Codes. Dari grafik tersebut dapat diambil kesimpulan bahwa nilai space saving hasil kompresi dengan algoritma Goldbach G1 Code lebih rendah daripada algoritma Unary Codes walaupun selisih nilai tidak terlalu jauh. Artinya algoritma Unary Codes lebih baik dari algoritma Goldbach G1 Code karena memiliki rata-rata nilai space saving yang lebih besar. Nilai space saving dari kedua algoritma cenderung semakin kecil ketika variasi karakter semakin besar. Artinya nilai space saving pada penambahan variasi karakter berbanding terbalik dengan variasi karakter. 25 Waktu Kompresi Waktu Kompresi Goldbach Unary Codes Variasi karakter Gambar 4.18 Grafik Waktu Kompresi Penambahan Variasi Karakter Gambar 4.18 menunjukkan grafik waktu kompresi untuk penambahan variasi karakter pada algoritma Goldbach G1 Code dan Unary Codes dan dapat diambil kesimpulan bahwa waktu kompresi dengan algoritma Unary Codes lebih lama dari pada algoritma Goldbach G1 Code. Dengan menggunakan 10 Variasi Karakter Kelipatan 20 Karakter yang ada pada tabel 4.3, maka didapat hasil pengujian perulangan karakter menggunakan algoritma Goldbach G1 Code dan Unary Codes pada tabel 4.8 dan 4.9.

68 55 Tabel 4.8 Hasil Pengujian Perulangan Karakter dengan Algoritma Goldbach G1 Code Frekuensi Variasi Karakter karakter Uk.sebelum Dikompresi (bit) Uk.setelah Dikompresi (bit) Cr SS Time ,3 0,2 4, ,4 0,3 8, ,4 0,3 2, ,4 0,3 3, ,4 0,3 7,5 Rata-rata 6,9 1,4 27,4 Tabel 4.9 Hasil Pengujian Perulangan Karakter dengan Algoritma Unary Codes Frekuensi Variasi Karakter karakter Uk.sebelum Dikompresi (bit) Uk.setelah Dikompresi (bit) Cr SS Time ,3 0, ,3 0,2 3, ,3 0,2 3, ,4 0,3 5, ,4 0,3 5,7 Rata-rata 6,7 1,2 21,7 Setelah melakukan pengujian kompresi dengan uji perulangan karakter, maka untuk memudahkan melihat perbandingan hasil pengujian dari algortima Goldbach G1 Code dan Unary Codes dibuat dalam bentuk grafik. Dari tabel 4.8 dan 4.9 dibuat grafik perbandingan berdasarkan parameter pembanding yaitu compression ratio (Cr), space saving (SS) dan time seperti pada gambar 4.19, gambar 4.20, dan gambar 4.21.

69 56 Compression Ratio Compression Ratio (Cr) 1,42 1,4 1,38 1,36 1,34 1,32 1,3 1,28 1,26 1, Goldbach Unary codes Frekuensi karakter Gambar 4.19 Grafik Compression Ratio Perulangan Karakter Gambar 4.19 menunjukkan grafik compression ratio untuk perulangan karakter pada algoritma Goldbach G1 Code dan Unary Codes dan dapat diambil kesimpulan bahwa compression ratio hasil kompresi dengan algoritma Goldbach G1 Code adalah lebih baik dari pada algoritma Unary Codes. Karena, nilai CR dari Goldbach G1 Code lebih besar dari pada nilai CR dari Unary Codes. Artinya nilai compression ratio berbanding terbalik dengan frekuensi karakter pada perulangan karakter. Space Saving (SS) 0,35 0,3 0,25 0,2 0,15 0,1 0, Space Saving Goldbach Unary Codes Gambar 4.20 Grafik Space Saving Perulangan Karakter

70 57 Gambar 4.20 menunjukkan grafik space saving untuk perulangan karakter pada algoritma Goldbach G1 Code dan Unary Codes. Dari grafik tersebut dapat diambil kesimpulan bahwa nilai space saving hasil kompresi dengan algoritma Goldbach G1 Code lebih besar dari pada algoritma Unary Codes walaupun selisih nilai tidak terlalu jauh. Artinya algoritma Goldbach G1 Code lebih baik dari algoritma Unary Codes karena memiliki rata-rata nilai space saving yang lebih besar. Nilai space saving dari kedua algoritma cenderung semakin kecil ketika frequensi karakter semakin besar. Artinya nilai space saving pada perulangan karakter berbanding terbalik dengan frequensi karakter. 10 Waktu Kompresi Waktu Kompresi Goldbach Unary Codes Frekuensi karakter Gambar 4.21 Grafik Waktu Kompresi Perulangan Karakter Gambar 4.21 menunjukkan grafik waktu kompresi untuk perulangan karakter pada algoritma Goldbach G1 Code dan Unary Codes dan dapat diambil kesimpulan bahwa waktu kompresi dengan algoritma Goldbach G1 Code lebih lama dari pada algoritma Unary Codes. Hasil pengujian menunjukkan bahwa algoritma Unary Codes lebih baik untuk 1 variasi karakter dan penambahan variasi karakter karena menghasilkan ukuran kompresi yang lebih kecil dari Goldbach G1 Code. Pada kompresi 1 Variasi Karakter rata-rata Compression Ratio sebesar 31,44 dan Space Saving sebesar 579,47. Dalam proses penambahan variasi karakter rata-rata Compression Ratio sebesar 22,05 dan Space Saving sebesar 480,8. Sedangkan untuk perulangan karakter algoritma Goldbach G1 Code lebih baik karena menghasilkan ukuran kompresi yang lebih kecil

71 58 dari pada algoritma Unary Codes, rata-rata Compression Ratio sebesar 6,9 dan Space Saving dengan rata-rata 1,4. Waktu kompresi pada pengujian file dipengaruhi oleh banyak frekuensi dan variasi karakter secara real time.

72 59 BAB 5 PENUTUP 5.1. Kesimpulan Kesimpulan yang dapat diambil dari penelitian ini adalah: 1. Algoritma kompresi Goldbach G1 Code dan Unary Codes dipengaruhi oleh jumlah karakter dan jumlah variasi karakter. 2. Semakin besar nilai dari parameter compression ratio dan space savingmakasemakin baik hasil kompresinya. 3. Hasil pengujian kompresi file teks dengan 1 Variasi Karakter menggunakan parameter compression ratio dan space saving menunjukkan bahwa algoritma Unary Codes lebih baik dari algoritma Goldbach G1 Codedengan nilai rata-rata compression ratio sebesar 31,44, dan space saving sebesar 579,47 bit. Sedangkan waktu kompresi secara real time dipengaruhi variasi karakter dan jumlah karakter,semakin banyak variasi dan jumlah karakter semakin lama waktu kompresinya. 4. Hasil pengujian kompresi file teks dengan penambahan variasi karakter menunjukkan bahwa algoritma Unary Codes lebih baik dari algoritma Goldbach G1 Code dengan rata-rata Compression Ratio sebesar 22,05 dan Space Saving sebesar 480,8,semakin banyak variasi dan jumlah karakter semakin lama waktu kompresinya. 5. Hasil pengujian kompresi file teks dengan perulangan karakter algoritma Goldbach G1 Code lebih baik karena menghasilkan ukuran kompresi yang lebih kecil dari pada algoritma Unary Codes, rata-rata Compression Ratio sebesar 6,9 dan Space Saving dengan rata-rata 1,4.Waktu kompresi secara real time dipengaruhi variasi karakter dan jumlah karakter, semakin banyak variasi dan jumlah karakter semakin lama waktu kompresinya.

73 60 6. Kedua algoritma akan berhenti mengkompresi ketika jumlah variasi karakter sebesar 14 karakter Saran Saran yang dapat diberikan pada penulis untuk pengembangan dan perbaikan sistem lebih lanjut adalah: 1. Sistem yang dirancang diharapkan dapat dikembangkan dengan mengkompresi jenis file teks lain seperti *.pdf. 2. Sistem ini dapat dikembangkan dengan algoritma kompresi lain untuk mencari algoritma yang lebih baik seperti algoritma Goldbach Code G1, Golomb Code, Additive Code, dll. 3. Sistem ini dapat dikembangkan dengan mengkompresi file dengan kompleksitas waktu. 4. Sistem yang dirancang diharapkan dapat dikembangkan dengan mengkompresi lebih dari 14 variasi karakter. 5. Sistem ini dapat dikembangkan dengan mengkompresi file berupa gambar, tabel, grafik dan komponen lainnya.

74 61 DAFTAR PUSTAKA ` Antoni Analisis Hasil Kompresi Data Teks Pada Algoritma Elias Gamma Code, Elias Delta Code, dan Levenstein Code. Tesis. Medan: Universitas Sumatera Utara. Barakbah, A. R., Karlita, T., & Ahsan, A. S Logika dan Algoritma. (Online) oritma.pdf (12 September 2017). Budiman,M A dan Rachmawati, D. On Using Goldbach G0 Codes and Even-Rodeh Codes for Text Compression on Using Goldbach G0 Codes and Even- Rodeh Codes for Text Compression.Jakarta.Jurnal Ilmu Komputer dan Teknologi Informasi.Vol. 1,No. 2:2-4 Hannisa,Raisya Perbandinganalgoritma Goldbach code G0 dan Elias Gamma CodeDalam Kompresi Teks. Skripsi. Universitas Sumatera Utara. Kandaga, T Analisis Penerapan Kompresi dan Dekompresi Data dengan Menggunakan Metode Statistik dan Kamus. Vol. 2 No.2, Desember Hal Bandung. Jurusan Teknik Informatika, Universitas Kristen Maranatha Putra, Darma Pengolahan Citra Digital. Yogyakarta: Andi Ramadhani, Sari Perbandingan Algoritma Fibonacci Codedan Inverted Elias Gamma Code Dalam Kompresi File Teks. Skripsi. Universitas Sumatera Utara. Sari, Junita perbandingan algoritma alternate reverse unary codes dan algoritma runlengthencoding pada kompresi citra jpg. Skripsi. Universitas Sumatera Utara. Levitin, A Introduction to The Design and Analysis of Algorithms. 3rd Edition. Pearson: United States of America. Pareker, P.M. & Thakare, S Lossless data compression algorithm a review. International Journal of Computer Science and Information Technologies 5(1): Pu, I. M Fundamental Data Compression. Jordan Hill: Oxford. Raharjo, B Mudah Belajar C#. Informatika bandung. Bandung Salomon, D Data Compression The Complete Reference. Springer: London. Salomon, D Variable-length Codes for Data Compression. Springer: London.

75 62 Salomon, D. &Motta,G Handbook of Data Compression.Springer-Verlag: London. Sayood, K Introduction to Data Compression. 3 rd edition. Morgan Kaufmann: San Fransisco. Sitepu, N. B Perbandingan Algoritma Elias Gamma Code dengan Shannon- Fano untuk Kompresi File Teks. Skripsi. Universitas Sumatera Utara. Suarga Algoritma dan Pemrograman. Edisi Kedua. Andi Offset:Yogyakarta. Sudewa, I. B. A Mengenal Character Set. IlmuKompuuter.Com.(Online). (diakses 24 September 2017). Sukiman & Chandra, Tintin Aplikasi Kompresi File dengan Algoritma Elias Gamma. dosen.publikasistmikibbi.lppm.org/permalink/ pdf.(online). (diakses 24 September 2017). Whitten, J. L. & Bentley, L.D Systems Analysis and Design Method. 7th Edition. McGraw-Hill: New York. Zarlis, M. & Handrizal Algoritma dan Pemrograman: Teori dan Praktik dalam Pascal. USU Press : Medan.

76 A-1 LISTING PROGRAM 1. Fungsi Goldbach G1 Code //Membuat kode Goldbach G1 Code using System; using System.Text; using System.Collections.Generic; public class GoldbachG1Compression { private static int[] fr; private static String cs; private static String[] g1; private static String GetCharSet(String st){ 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(); private static int CountChar(String s, char ch){ return s.split(ch).length - 1; private static int[] CountFreq(String st){ 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; private static void InsertionSort(int[] freq, String charset) { 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){

77 A-2 char[] chararray = sb.tochararray(); Array.Reverse(charArray); return new String(charArray); private static String DecToBin(int dec) { 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(); private static int BinToDec(String bin) { 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; { // converts strings into stringbits private static String StringToStb(String st, String c, String[] s) StringBuilder stb = new StringBuilder(); for (int i = 0; i < st.length; i++) { String z = Char.ToString(st[i]); int k = c.indexof(z); stb.append(s[k]); int x = stb.length % 8; int pad = 0; if (x!= 0) { pad = 8 - x; for (int i = 0; i < pad; i++) stb.append("0"); String d = DecToBin(pad); int y = 8 - d.length; for (int i = 0; i < y; i++) stb.append("0"); stb.append(d); return stb.tostring(); private static String Encode(String stb) { 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);

78 A-3 return code.tostring(); private static String Decode(String code) { 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(); { private static String Decompress(String stb, String c, String[] s) StringBuilder st = new StringBuilder(); StringBuilder bit = new StringBuilder(); StringBuilder stb2; int t = stb.length; int pad = BinToDec(stb.Substring(t - 8, 8)); stb2 = new StringBuilder(stb.Substring(0, t - pad - 8)); for (int i = 0; i < stb2.length; i++) { bit.append(stb2[i]); List<string> list = new List<string>(s); if (list.contains(bit.tostring())) { int x = list.indexof(bit.tostring()); st.append(c[x]); bit = new StringBuilder(); return st.tostring(); private static void GoldbachG1Codes(String st) { int[] freq = CountFreq(st); String charset = GetCharSet(st); int t = charset.length; InsertionSort(freq, charset); freq = fr; charset = cs; String[] g = new String[] {"11", "1010", "0101", "010010", "010011", "011010", "001001", "011011", "100111", " ", " ", " ", " ", " "; g1 = new String[t]; for (int i = 0; i < t; i++) { g1[i] = g[i]; private static void RunGoldbachG1CodesCompression(String st) { //Console.WriteLine("TEXT COMPRESSION WITH GOLDBACH G1 COMPRESSION CODES\n"); //Console.WriteLine("String = " + st); //Console.WriteLine(" String = " + st.length + "\n");

79 A-4 GoldbachG1Codes(st); //Console.WriteLine("Char = " + cs); //Console.WriteLine(" Char = " + cs.length + "\n"); //Console.WriteLine("Char\tFreq\t\tUnary Codes"); //for (int i = 0; i < cs.length; i++) // Console.WriteLine(cs[i] + "\t\t" + fr[i] + "\t\t" + g1[i]); //Console.WriteLine(); String stb = StringToStb(st, cs, g1); //Console.WriteLine("String-bits = " + stb); int uncompressed_bits = st.length * 8; int compressed_bits = stb.length; //Console.WriteLine(); //Console.WriteLine(" compressed_bits = " + compressed_bits); //Console.WriteLine(" uncompressed_bits = " + uncompressed_bits); //Console.WriteLine(); double CR = (uncompressed_bits * 1.0) / compressed_bits; double SS = ( /CR) * 100; //Console.WriteLine("Compression Ratio = " + CR + " : 1"); //Console.WriteLine("Space Savings = " + SS + " %"); String code = Encode(stb); String dc = Decode(code); String ds = Decompress(dc, cs, g1); //Console.WriteLine(); //Console.WriteLine("Decompressed_String = " + ds); //Console.WriteLine("\nDecompressed_String sama dengan String asli? " + (ds == st)); //Console.WriteLine("\n\n"); 2. Elias Unary Codes //membuat kode Unary Codes using System; using System.Text; using System.Collections.Generic; public class UnaryCodesCompression { private static int[] fr; private static String cs; private static String[] uc; private static String GetCharSet(String st){ StringBuilder s = new StringBuilder(); int n = st.length; for (int i = 0; i < n; i++){

80 A-5 char c = st[i]; if (s.tostring().indexof(c) == -1) s.append(c); return s.tostring(); private static int CountChar(String s, char ch){ return s.split(ch).length - 1; private static int[] CountFreq(String st){ 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; private static void InsertionSort(int[] freq, String charset) { 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;

81 A-6 cs = sb.tostring(); public static String Reverse(String sb){ char[] chararray = sb.tochararray(); Array.Reverse(charArray); return new String(charArray); private static String DecToBin(int dec) { 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(); private static int BinToDec(String bin) { 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; // converts strings into stringbits { private static String StringToStb(String st, String c, String[] s)

82 A-7 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(); private static String Encode(String stb) { 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(); private static String Decode(String code) { StringBuilder sb = new StringBuilder(); int t = code.length; for (int i = 0; i < t; i++) {

83 A-8 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(); { private static String Decompress(String stb, String c, String[] s) StringBuilder st = new StringBuilder(); StringBuilder bit = new StringBuilder(); StringBuilder stb2; int t = stb.length; int pad = BinToDec(stb.Substring(t - 8, 8)); stb2 = new StringBuilder(stb.Substring(0, t - pad - 8)); for (int i = 0; i < stb2.length; i++) { bit.append(stb2[i]); List<string> list = new List<string>(s); if (list.contains(bit.tostring())) { int x = list.indexof(bit.tostring()); st.append(c[x]); bit = new StringBuilder(); return st.tostring(); private static void UnaryCodes(String st) { int[] freq = CountFreq(st); String charset = GetCharSet(st); int t = charset.length;

84 A-9 InsertionSort(freq, charset); freq = fr; charset = cs; String[] g = new String[] {"0", "10", "110", "1110", "11110", "111110", " ", " ", " ", " ", " ", " ", " ", " "; uc = new String[t]; for (int i = 0; i < t; i++) { uc[i] = g[i]; private static void RunUnaryCodesCompression(String st) { Console.WriteLine("TEXT COMPRESSION WITH UNARY CODES COMPRESSION\n"); Console.WriteLine("String = " + st); Console.WriteLine(" String = " + st.length + "\n"); UnaryCodes(st); Console.WriteLine("Char = " + cs); Console.WriteLine(" Char = " + cs.length + "\n"); Console.WriteLine("Char\tFreq\t\tUnary Codes"); for (int i = 0; i < cs.length; i++) Console.WriteLine(cs[i] + "\t\t" + fr[i] + "\t\t" + uc[i]); Console.WriteLine(); String stb = StringToStb(st, cs, uc); Console.WriteLine("String-bits = " + stb); int uncompressed_bits = st.length * 8; int compressed_bits = stb.length; Console.WriteLine(); Console.WriteLine(" compressed_bits = " + compressed_bits); Console.WriteLine(" uncompressed_bits = " + uncompressed_bits); Console.WriteLine(); double CR = (uncompressed_bits * 1.0) / compressed_bits; double SS = ( /CR) * 100; Console.WriteLine("Compression Ratio = " + CR + " : 1"); Console.WriteLine("Space Savings = " + SS + " %");

85 A-10 String code = Encode(stb); String dc = Decode(code); String ds = Decompress(dc, cs, uc); Console.WriteLine(); Console.WriteLine("Decompressed_String = " + ds); Console.WriteLine("\nDecompressed_String sama dengan String asli? " + (ds == st)); Console.WriteLine("\n\n");

86 CURRICULUM VITAE Data Pribadi Nama : Winda Aprianti Harahap Tempat/Tanggal Lahir : Padangsidimpuan/ 15 April 1995 Tinggi/Berat Badan : 163 cm / 55 kg Agama : Islam Kewarganegaraan : Indonesia Alamat : Jl. Eka Bakti Perum. Griya Eka Bakti No. 20B Johor, Medan Telp/Hp : windaaprianti15@gmail.com Riwayat Pendidikan [ ] : S1 Ilmu Komputer Universitas Sumatera Utara, Medan [ ] : SMA Negeri 6 PadangSidimpuan [ ] : MTsN PadangSidimpuan [ ] : SDN PadangSidimpuan Keahlian/Kursus Keahlian Komputer Pemrograman : C# Database : MySQL Perkantoran : Microsoft Office B-11

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

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

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

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

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

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

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

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 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

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

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

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 19 BAB 2 LANDASAN TEORI 2.1 Pengertian File Teks File teks merupakan file yang berisi informasi-informasi dalam bentuk teks. Data yang berasal dari dokumen pengolah kata, angka yang digunakan dalam perhitungan,

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

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 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA 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

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

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

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

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

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

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

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

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

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

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

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

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

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

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB LANDASAN TEORI. Pengertian File Teks File teks merupakan file yang berisi informasi-informasi dalam bentuk teks. Data yang berasal dari dokumen pengolah kata, angka yang digunakan dalam perhitungan,

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1.Latar Belakang

BAB 1 PENDAHULUAN. 1.1.Latar Belakang BAB 1 PENDAHULUAN Pada bab ini akan dibahas mengenai hal-hal yang menjadi latar belakang pembuatan tugas akhir, rumusan masalah, tujuan, manfaat, dan metodologi penelitian serta sistematika penulisan dari

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 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 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

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

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

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

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

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

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 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 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

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

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

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

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

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

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 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 III ANALISIS DAN PERANCANGAN SISTEM. Analisis sistem bertujuan untuk mengidentifikasi permasalahan

BAB III ANALISIS DAN PERANCANGAN SISTEM. Analisis sistem bertujuan untuk mengidentifikasi permasalahan BAB III ANALISIS DAN PERANCANGAN SISTEM 3.1 Analisis Sistem Analisis sistem bertujuan untuk mengidentifikasi permasalahan permasalahan yang ada pada sistem di mana aplikasi dibangun yang meliputi perangkat

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

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

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

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

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

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

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

SKRIPSI KOMPRESI DATA TEKS MENGGUNAKAN ALGORITMA PPM (PREDICTION BY PARTIAL MATCHING)

SKRIPSI KOMPRESI DATA TEKS MENGGUNAKAN ALGORITMA PPM (PREDICTION BY PARTIAL MATCHING) 11 SKRIPSI KOMPRESI DATA TEKS MENGGUNAKAN ALGORITMA PPM (PREDICTION BY PARTIAL MATCHING) Disusun oleh : Gilang Himawan Widya Putra 0735010026 PROGRAM STUDI SISTEM INFORMASI FAKULTAS TEKNOLOGI INDUSTRI

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

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA 5 BAB 2 TINJAUAN PUSTAKA Setelah membaca bab ini maka pembaca akan memahami pengertian tentang kompresi, pengolahan citra, kompresi data, Teknik kompresi, Kompresi citra. 2.1 Defenisi Data Data adalah

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 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 KOMBINASI METODE HUFFMAN DAN RUN LENGTH ENCODING (RLE) UNTUK KOMPRESI CITRA SKRIPSI MUHAMMAD SAID ALKHUDRI

IMPLEMENTASI KOMBINASI METODE HUFFMAN DAN RUN LENGTH ENCODING (RLE) UNTUK KOMPRESI CITRA SKRIPSI MUHAMMAD SAID ALKHUDRI IMPLEMENTASI KOMBINASI METODE HUFFMAN DAN RUN LENGTH ENCODING (RLE) UNTUK KOMPRESI CITRA SKRIPSI MUHAMMAD SAID ALKHUDRI 081401070 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

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

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA 5 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

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

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

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

PENGAMANAN TEKS DENGAN HYBRID CRYPTOSYSTEM ALGORITMA MULTI-POWER RSA DAN ALGORITMA BLOWFISH SKRIPSI MAHADI PUTRA

PENGAMANAN TEKS DENGAN HYBRID CRYPTOSYSTEM ALGORITMA MULTI-POWER RSA DAN ALGORITMA BLOWFISH SKRIPSI MAHADI PUTRA PENGAMANAN TEKS DENGAN HYBRID CRYPTOSYSTEM ALGORITMA MULTI-POWER RSA DAN ALGORITMA BLOWFISH SKRIPSI MAHADI PUTRA 131401057 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

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

STMIK GI MDP. Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2010/2011

STMIK GI MDP. Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2010/2011 STMIK GI MDP Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2010/2011 ANALISIS METODE HUFFMAN UNTUK KOMPRESI DATA CITRA DAN TEKS PADA APLIKASI KOMPRESI DATA Shelly Arysanti

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 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

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

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Perkembangan teknologi informasi yang pesat telah menjadi peran yang sangat penting untuk pertukaran informasi yang cepat. Kecepatan pengiriman informasi dalam bentuk

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

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA 7 BAB 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

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Citra merupakan representasi digital dari objek gambar, yang tidak lepas dari kebutuhan manusia. Pada umumnya representasi citra membutuhkan memori yang cukup besar,

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

RANCANG BANGUN APLIKASI KOMPRESI FILE MENGGUNAKAN METODE LZW BERBASIS JAVA OLEH : HARDIANSYAH Dosen Pembimbing : Tri Daryanto, S.Kom.

RANCANG BANGUN APLIKASI KOMPRESI FILE MENGGUNAKAN METODE LZW BERBASIS JAVA OLEH : HARDIANSYAH Dosen Pembimbing : Tri Daryanto, S.Kom. RANCANG BANGUN APLIKASI KOMPRESI FILE MENGGUNAKAN METODE LZW BERBASIS JAVA OLEH : HARDIANSYAH 4150412-020 Dosen Pembimbing : Tri Daryanto, S.Kom., MT PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER

Lebih terperinci

IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA ARIHTMETIC CODING DAN SHANNON-FANO PADA KOMPRESI CITRA BMP

IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA ARIHTMETIC CODING DAN SHANNON-FANO PADA KOMPRESI CITRA BMP IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA ARIHTMETIC CODING DAN SHANNON-FANO PADA KOMPRESI CITRA BMP Syahfitri Kartika Lidya 1) Mohammad Andri Budiman 2) Romi Fadillah Rahmat 3) Jurusan Teknologi Informasi

Lebih terperinci

WORD PREDICTION MENGGUNAKAN WINDOWS API BERBASIS WORD FREQUENCIES SKRIPSI ADE N TAMBUNAN

WORD PREDICTION MENGGUNAKAN WINDOWS API BERBASIS WORD FREQUENCIES SKRIPSI ADE N TAMBUNAN WORD PREDICTION MENGGUNAKAN WINDOWS API BERBASIS WORD FREQUENCIES SKRIPSI ADE N TAMBUNAN 091402054 PROGRAM STUDI S-1 TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA

Lebih terperinci

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

BAB 3 METODOLOGI PENELITIAN. kepustakaan dan studi laboratorium, di mana penulis mempelajari teori-teori teknik BAB 3 METODOLOGI PENELITIAN 3.1 Metode Penelitian Dalam penulisan ini metode penelitian yang digunakan adalah metode studi kepustakaan dan studi laboratorium, di mana penulis mempelajari teori-teori teknik

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

IMPLEMENTASI KOMPRESI DATA TEXT MENGGUNAKAN HUFFMAN CODING

IMPLEMENTASI KOMPRESI DATA TEXT MENGGUNAKAN HUFFMAN CODING IMPLEMENTASI KOMPRESI DATA TEXT MENGGUNAKAN HUFFMAN CODING 1 Devie R. Suchendra, 2 Sandra Wulandari 1 Program Studi Sistem Informasi STMIK LPKIA 2 Program Studi Teknik Informatika STMIK LPKIA Jln. Soekarno

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

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

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

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 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Kompresi File Pada dasarnya semua data itu merupakan rangkaian bit 0 dan 1. Yang membedakan antara suatu data tertentu dengan data yang lain adalah ukuran dari rangkaian bit dan

Lebih terperinci

BAB I PENDAHULUAN. Dalam bidang teknologi informasi, komunikasi data sangat sering

BAB I PENDAHULUAN. Dalam bidang teknologi informasi, komunikasi data sangat sering BAB I PENDAHULUAN 1.1 Latar Belakang Dalam bidang teknologi informasi, komunikasi data sangat sering dilakukan. Komunikasi data ini berhubungan erat dengan pengiriman data menggunakan sistem transmisi

Lebih terperinci

ANALISIS DAN EKSTRAKSI STEGO-OBJEK DENGAN MENGGUNAKAN METODE STEGANALISIS ENHANCED LSB SKRIPSI ANGGARANI NOVITASARI

ANALISIS DAN EKSTRAKSI STEGO-OBJEK DENGAN MENGGUNAKAN METODE STEGANALISIS ENHANCED LSB SKRIPSI ANGGARANI NOVITASARI ANALISIS DAN EKSTRAKSI STEGO-OBJEK DENGAN MENGGUNAKAN METODE STEGANALISIS ENHANCED LSB SKRIPSI ANGGARANI NOVITASARI 061401051 PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Pemampatan data (data compression) merupakan salah satu kajian di dalam ilmu komputer yang bertujuan untuk mengurangi ukuran file sebelum menyimpan atau memindahkan

Lebih terperinci

METODE HYBRID (BAYES DAN MULTIFACTOR EVALUATION PROCESS) DALAM SISTEM PENDUKUNG KEPUTUSAN SKRIPSI KHAIRUN NISA

METODE HYBRID (BAYES DAN MULTIFACTOR EVALUATION PROCESS) DALAM SISTEM PENDUKUNG KEPUTUSAN SKRIPSI KHAIRUN NISA METODE HYBRID (BAYES DAN MULTIFACTOR EVALUATION PROCESS) DALAM SISTEM PENDUKUNG KEPUTUSAN SKRIPSI KHAIRUN NISA 111401024 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS

Lebih terperinci

APLIKASI KOMPRESI FILE MENGGUNAKAN KOMBINASI ALGORITMA LZ77 DAN HUFFMAN SKRIPSI. Oleh : YUSUF FERYANTO

APLIKASI KOMPRESI FILE MENGGUNAKAN KOMBINASI ALGORITMA LZ77 DAN HUFFMAN SKRIPSI. Oleh : YUSUF FERYANTO APLIKASI KOMPRESI FILE MENGGUNAKAN KOMBINASI ALGORITMA LZ77 DAN HUFFMAN SKRIPSI Oleh : YUSUF FERYANTO 0834010211 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INDUSTRI UNIVERSITAS PEMBANGUNAN NASIONAL

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

Analisa dan Perancangan Aplikasi Kompresi File Dengan Menggunakan Metode Byte Pair Encoding

Analisa dan Perancangan Aplikasi Kompresi File Dengan Menggunakan Metode Byte Pair Encoding Analisa dan Perancangan Aplikasi Kompresi File Dengan Menggunakan Metode Byte Pair Encoding Loka Andriyan 1,Ummul Khair 2,Abdul Jabbar 3 1 Mahasiswa Jurusan Teknik Informatika Sekolah Tinggi Teknik Harapan

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 Perkembangan teknologi informasi yang pesat telah menjadi peran yang sangat penting untuk pertukaran informasi yang cepat. Kecepatan pengiriman informasi dalam

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