Catatan: Saya terkejut bahwa ini belum pernah ditanyakan sebelumnya, dan jika sudah, saya tidak dapat menemukannya dalam pencarian.
Saya telah mengunjungi banyak situs web, saya telah membaca banyak artikel, dan saya telah mendengar banyak penjelasan. Sebagian besar dari mereka bagus, tetapi semuanya terlalu luas atau terlalu rumit atau buruk. Jadi pertanyaan saya adalah, bagaimana cara kerja kompiler?
Jika ini adalah pertanyaan yang sulit dan luas, tolong beri tahu saya. Tetapi jika tidak, harap jawab pertanyaannya.
Jawaban:
Compiler adalah program yang menerjemahkan kode sumber untuk program lain dari bahasa pemrograman menjadi kode yang dapat dieksekusi.
Kode sumber biasanya dalam bahasa pemrograman tingkat tinggi (misalnya Pascal, C, C ++, Java, Perl, C #, dll.). Kode yang dapat dieksekusi dapat berupa urutan instruksi mesin yang dapat dieksekusi oleh CPU secara langsung, atau mungkin merupakan representasi perantara yang ditafsirkan oleh mesin virtual (misalnya kode byte Java).
Singkatnya, kompiler mengubah program dari format yang bisa dibaca manusia menjadi format yang bisa dibaca mesin.
Mengenai cara kerja kompiler, itu memang rumit. Ada buku-buku dan kursus universitas tentang masalah ini. Saya akan mencoba untuk menguraikan secara singkat tahapan utama dari proses, tetapi ini akan menjadi gambaran yang sangat sepintas lalu.
Sekali lagi, saya menekankan bahwa ini adalah deskripsi yang sangat singkat. Kompiler modern sangat cerdas, dan akibatnya sangat rumit.
sumber
Compiler adalah program komputer (atau serangkaian instruksi) yang mengubah kode sumber yang ditulis dalam bahasa pemrograman (bahasa sumber) menjadi bahasa komputer lain (bahasa target, sering memiliki bentuk biner yang dikenal sebagai kode objek). Alasan paling umum untuk ingin mengubah kode sumber adalah untuk membuat program yang dapat dieksekusi.
Compiler menjembatani program sumber dalam bahasa tingkat tinggi dengan perangkat keras yang mendasarinya. Kompiler membutuhkan:
sumber