Kode awalan adalah struktur kode biner yang mewakili huruf atau karakter tertentu. String kode ini digunakan oleh komputer untuk berkomunikasi. Mereka terdiri dari nol dan yang diterjemahkan ke dalam perintah atau kata-kata tertentu. Misalnya, huruf “A” mungkin berisi kode awalan 0 sedangkan angka 1010 mewakili huruf “D”.
Pohon biner digunakan untuk mewakili bagaimana string angka dalam kode awalan diterjemahkan ke huruf, karakter, atau pesan tertentu. Banyak aplikasi perangkat lunak menggunakan kode awalan berdasarkan pohon biner untuk mengompresi datanya. Beberapa kombinasi kode biner yang berbeda digabungkan menjadi satu “pohon” yang mungkin berisi satu atau lebih pesan. Biasanya ada akar yang diwakili oleh 0 atau 1 yang disamakan dengan salah satu karakter.
Dari akarnya, ekstensi angka dapat diikuti yang diterjemahkan ke dalam huruf lain. Mungkin ada beberapa cabang berbeda yang berasal dari jalur utama pohon biner yang diterjemahkan ke dalam karakter terpisah. Huruf atau karakter yang diwakili oleh satu digit biner disebut bit tunggal, sedangkan yang diwakili oleh lebih dari satu digit biner disebut dua, tiga atau empat bit.
Jumlah bit berhubungan langsung dengan jumlah digit biner yang mewakili karakter tertentu dalam kode awalan. Bit tunggal biasanya digunakan untuk karakter yang muncul beberapa kali dalam pesan, sedangkan string dua atau lebih bit digunakan untuk huruf dan karakter yang jarang muncul. Misalnya, jika kode awalan mengkodekan kata “tanpa henti”, satu bit kemungkinan besar akan mewakili huruf “E”.
Kata-kata dan pesan biasanya dibuat dengan menempatkan kode biner bersama-sama yang dibaca dari kiri ke kanan pohon kode awalan. Misalnya, satu pohon biner dapat berisi huruf “R” yang diwakili oleh angka biner 0, huruf “E” yang diwakili oleh string biner 011 dan huruf “D” yang diwakili oleh string biner 0110. Dalam hal ini kata “merah” akan dirangkai menjadi 00110110.
Dengan menggunakan kode awalan, komputer dan aplikasi dapat menghemat ruang. Karena sejumlah perintah dan pesan menggunakan huruf dan karakter yang sama, masing-masing dapat diwakili oleh terjemahan kode biner tertentu. Secara terpisah, kata-kata ini mungkin memerlukan ruang penyimpanan tambahan karena jumlah bit yang dikandungnya masing-masing. Pohon biner mengurangi jumlah bit yang dibutuhkan, terkadang meningkatkan ruang penyimpanan hingga 50 persen.