Berikut Perbedaan Antara Compiler dengan Interpreter dari berbagai sumber

Interpreter | Compiler |
Menerjemahkan kode sumber untuk 1 statemen dalam satu waktu | Membaca keseluruhan kode sumber dan kemudian menerjemahkannya secara keseluruhan menjadi bahasa mesin |
Membutuhkan waktu yang sedikit untuk menganalisa kode sumber tapi secara keseluruhan waktu eksekusinya menjadi lebih lambat | Membutuhkan waktu yang lebih banyak menganalisa kode program tapi waktu eksekusinya menjadi lebih cepat |
Tidak ada Intermediate Object Code dihasilkan, sehingga membuat memori efisien | Menghasilkan Intermediate Object Code yang kemudian dihubungkan dengan yang lain, sehingga lebih banyak memerlukan memori |
Menerjemahkan kode program secara kontinu sampai kode error pertama ditemukan, kemudian proses dihentikan. Oleh karena itu lebih mudah melakukan debug | Secara umum menampilkan pesan error pada keseluruhan kode program. Oleh karena itu, ketika melakukan debug menjadi lebih sulit |
Bahasa pemrograman seperti PHP, Python, Ruby menggunakan Interpreter. | Bahasa pemrograman seperti C, C++ menggunakan Compiler. |
Compiler adalah suatu program komputer yang mengubah source code dalam bahasa pemrograman ke dalam bahasa mesin. Penterjemahan source code dengan compiler dilakukan dengan 2 tahapan. Tahap pertama adalah parsing, yaitu pembuatan kode objek. Tahap kedua adalah linking, yaitu penggabungan kode objek dengan library (perpustakaan).
Interpeter adalah suatu program yang metnerjemahkan instruksi dalam bahasa tingkat tinggi ke dalam bahasa tingkat menengah. Pertama, intrepeter akan mengeksekusi source code yang dibuat oleh programmer, kemudian intrepeter menterjemahkan source code tersebut ke dalam bahasa mesin. Setelah source code diterjemahkan, mesin dapat memahami instruksi yang diberikan sehingga mesin akan melakukan instruksi tersebut.
Perbedaan antara compiler dan interpeter adalah sebagai berikut :
Interpreter menterjemahkan baris per baris. Sedangkan compiler, menterjemahkan seluruh instruksi sekaligus. Selanjutnya hasil terjemahan bisa dijalankan secara langsung, tanpa tergantung lagi oleh program sumber atau compilernya.
Pada interpreter, penyusunan program relatif lebih cepat dan bisa langsung diuji sekalipun masih ada beberapa kesalahan secara kaidah dalam program. Sedangkan pada compiler, proses pembuatan dan pengujian membutuhkan waktu relatif lebih lama, sebab ada waktu untuk mengkompilasi (menerjemahkan) dan ada pula waktu untuk melakukan proses linking.
Compiler membutuhkan linker untuk menggabungkan kode objek dengan berbagai macam library demi menghasilkan suatu kode yang bisa dijalankan oleh mesin. Sedangkan interpreter tidak butuh linker untuk menggabungkan kode objek.
Pada interpreter, kode program tidak dapat dirahasiakan. Sedangkan pada compiler, kode program bisa dirahasiakan, sebab yang dieksekusi adalah program yang dalam bentuk kode mesin.
Bahasa pemrograman yang menggunakan compiler adalah Visual Basic, Fortran, Cobol, Pascal, dan C. Sedangkan bahasa pemrograman yang menggunakan interpreter yaitu PHP, ASP, dan Perl.
Compiler dan Interpreter adalah sama mempunyai fungsi untuk mengeksekusi kode program (yang dibuat oleh program) kemudian menterjemahkannya ke dalam bahasa mesin, sehingga mesin melakukan instruksi yang diminta oleh oleh programmer tersebut.
Seperti yang kita ketahui, mesin misalnya mesin komputer hanya mengenal bilangan biner yang lebih dikenal dengan bahasa mesin. Contohnya adalah “011001011101”. Compiler dan intrepreter sendiri adalah penerjemah dari bahasa bahasa tingkat tinggi (misalnya C++, Java, Visual Basic ) ke bahasa tingkat rendah (bahasa mesin).
Compiler

Compiler adalah program sistem yang digunakan sebagai alat bantu dalam pemrogaman perangkat lunak yang melakukan proses penterjemahan code (yang dibuat programmer) ke dalam bahasa mesin. Hasil dari terjemahan ini adalah bahasa mesin. Pada beberapa compiler, output berupa bahasa mesin dilaksanakan dengan proses assembler yang berbeda. Jadi jika di dalam program ada error, maka program tersebut sama sekali tidak menghasilkan output. Program hanya menghasilkan output jika keseluruhan kode program telah benar.
Interpreter

Interpreter adalah perangkat lunak yang mampu mengeksekusi code program (yang ditulis oleh programmer) lalu menterjemahkannya ke dalam bahasa mesin, sehingga mesin melakukan instruksi yang diminta oleh programmer tersebut. Perintah-perintah yang dibuat oleh programmer tersebut dieksekusi baris demi baris, sambil mengikuti logika yang terdapat di dalam kode tersebut. Proses ini sangat berbeda dengan compiler, dimana pada compiler, hasilnya sudah langsung berupa satu kesatuan perintah dalam bentuk bahasa mesin, dimana proses penterjemahan dilaksanakan sebelum program tersebut dieksekusi.
Apa perbedaan antara Compiler dan Interpreter?
Berikut saya lampirkan perbedaan antara compiler dan interpreter dalam sebuah tabel yang saya crop dari Ms. Excel, dengan harapan agar dapat lebih dimengerti dan dipahami:


Source:
https://id.quora.com/Apakah-perbedaan-antara-Compiler-dan-Interpreter
https://www.yudana.id/perbedaan-antara-interpreter-dan-compiler/
https://www.dictio.id/t/apakah-perbedaan-antara-compiler-dan-interpreter/12780/4
Comments
Post a Comment