Kompresi merupakan proses pengubahan sekumpulan data menjadi suatu bentuk kode untuk menghemat kebutuhan tempat penyimpanan dan waktu untuk transmisi data. Saat ini terdapat berbagai tipe algoritma kompresi. Kompresi merupakan proses pengubahan sekumpulan data menjadi suatu bentuk kode untuk menghemat kebutuhan tempat penyimpanan dan waktu untuk transmisi data. Saat ini terdapat berbagai tipe algoritma kompresi, antara lain: Huffman, LIFO, LZHUF, LZ77 dan variannya (LZ78, LZW, GZIP), Dynamic Markov Compression (DMC), Block-Sorting Lossless, Run-Length, Shannon-Fano, Arithmetic, PPM (Prediction by Partial Matching), Burrows-Wheeler Block Sorting, dan Half Byte. Ada beberapa faktor yang sering menjadi pertimbangan dalam memilih suatu metode kompresi yang tepat, yaitu kecepatan kompresi, sumber daya yang dibutuhkan (memori, kecepatan PC), ukuran file hasil kompresi, besarnya redundansi, dan kompleksitas algoritma. Metode Shanon-fano yang di pergunakan dalam penulisan ini mengkompresi input stream dengan menggunakan sampel data teks yang berupa tulisan nama. Data teks awal dengan jumlah 176 bits, dengan menggunakan metode ini terdapat beberapa langkah yang di lakukan sehingga pada saat di lakukan kompresi akan menjadi berkurang jumlahnya menjadi 107 bits. Manfaat kompresi ini sama dengan jenis kompresi yang lain yaitu memudahkan dalam menyimpan file dan menghemat memory yang terdapat dalam komputer, sehingga memudahkan komputer dalam bekerja dan tidak membebani dalam pemrosesan data.