Perbezaan Antara Kompilator dan Jurubahasa

Compiler vs Interpreter

Apabila menulis program dalam bahasa tahap tinggi, komputer tidak akan dapat memahaminya. Sehingga ia dapat digunakan, anda perlu mengubahnya menjadi sesuatu yang difahami oleh komputer. Di sinilah penyusun dan penterjemah datang ketika kedua-duanya melakukan fungsi yang sama. Perbezaan utama antara pengkompil dan jurubahasa adalah apabila mereka melaksanakan kod tersebut. Dengan jurubahasa, kod tersebut dilaksanakan dengan segera menerusi tafsiran lulus kod ditafsirkan ke komputer. Sebagai perbandingan, pengompil tidak melaksanakan kod. Sebaliknya, ia menulis kod siap ke cakera. Kod yang ditulis ke cakera boleh dilaksanakan pada bila-bila masa.

Perbezaan utama antara jurubahasa dan pengkompil memupuk satu lagi. Oleh kerana jurubahasa diperlukan apabila anda menjalankan program, anda perlu mempunyai jurubahasa dipasang jika anda hendak melaksanakan program di mesin anda. Ini tidak berlaku dengan pengkompil. Setelah program dikumpulkan, anda hanya perlu program yang dikompilasi dan bukan pengkompil atau kod asal.

Satu kelebihan menggunakan jurubahasa dan bukan pengkompil adalah keupayaan untuk melaksanakan program pada komputer yang menjalankan sistem pengendalian yang berbeza; memandangkan anda mempunyai penterjemah yang sesuai. Apabila anda menyusun program, ia hanya untuk sistem operasi tertentu dan tidak akan dijalankan pada orang lain. Untuk menjadikannya berjalan pada sistem pengendalian yang lain, anda perlu mengoptimumkan kod anda untuk sistem pengendalian itu dan menyusunnya lagi.

Kelemahan menggunakan jurubahasa adalah overhead tambahan. Seorang jurubahasa memerlukan beberapa kuasa pemprosesan dan setiap baris kod akan ditafsirkan semasa runtime. Ini tidak berlaku apabila anda mempunyai program yang disusun kerana sistem operasi boleh membacanya secara langsung dan melaksanakan setiap arahan. Langkah tambahan untuk mentafsirkan kod menjadikan program yang diterjemahkan berjalan dengan perlahan daripada kod yang dikompilasi. Jurubahasa juga tidak akan dapat memanfaatkan pengoptimuman OS spesifik yang boleh membiarkan program yang dikompilasi dijalankan dengan lebih cekap.

Memilih antara pengkompil dan jurubahasa harus bergantung kepada sama ada anda mahukan kebolehgunaan atau prestasi.

Ringkasan:

  1. Seorang jurubahasa secara langsung melaksanakan kod itu semasa pengkompil tidak
  2. Seorang jurubahasa perlu tersedia di mesin sasaran manakala pengkompil tidak
  3. Program yang ditafsirkan akan dijalankan pada beberapa platform manakala program yang dikompilasi tidak akan
  4. Program yang ditafsirkan akan berjalan lebih perlahan daripada program yang disusun