Mari kita kategorikan data menjadi tiga kategori: data dapat dibaca oleh manusia (biasanya teks, bervariasi dari buku ke program), data yang dimaksudkan untuk dibaca oleh komputer dan data lainnya (parsing gambar atau suara).
Untuk kategori pertama, kita perlu mengolahnya menjadi sesuatu yang dapat digunakan komputer. Karena bahasa yang digunakan oleh manusia umumnya dapat ditangkap dengan relatif baik oleh parser, kami biasanya menggunakan parser untuk ini.
Contoh data dalam kategori ketiga adalah gambar yang dipindai dari halaman buku yang ingin Anda parsing menjadi teks. Untuk kategori ini, Anda hampir selalu membutuhkan pengetahuan yang sangat spesifik tentang input Anda, dan oleh karena itu Anda memerlukan program khusus untuk menguraikannya. Teknologi parsing standar tidak akan membuat Anda jauh di sini.
Pertanyaan Anda adalah tentang kategori kedua: jika kami memiliki data dalam biner, hampir selalu merupakan produk dari program komputer, yang ditujukan untuk program komputer lain. Ini juga berarti bahwa format data yang dipilih oleh program yang bertanggung jawab untuk pembuatannya.
Program komputer hampir selalu menghasilkan data dalam format yang memiliki struktur yang jelas. Jika kami mengurai beberapa input, kami pada dasarnya mencoba mencari tahu struktur input. Dengan data biner, struktur ini umumnya sangat sederhana dan mudah diurai oleh komputer.
Dengan kata lain, biasanya agak sia-sia untuk mengetahui struktur input yang Anda sudah tahu strukturnya. Karena parsing tidak gratis (butuh waktu dan menambah kompleksitas pada program Anda), inilah mengapa menggunakan lexers / parser pada data biner adalah 'sangat salah'.