PERTAMA, MARI KITA LIHAT DULU MENGENAI SEJARAH COMPILER DAN INTERPRETER
compiler
Bertahun tahun pemrograman bahasa tingkat tinggi (high level languange-HLL) telah dikenal luar di lingkungan pemrograman komputer karena kemudahan dalam pembuatannya. Beberapa tahun terakhir ada dua faktor yang menjadi perhatian dalam pengembangan program, yaitu : protabilitas dan pemeliharaan program. Seperti diketahui komputer tidak ‘mengenal’ HLL, sehingga diperlukan suatu konversi ke dalam bahasa mesin.
Compiler adalah suatu program yang melakukan proses translasi dari HLL ke dalam bahasa mesin di komputer. Disamping program translasi, compiler juga mempunyai beberapa fungsi penting, seperti diagnostik, contohnya kemampuan pendeteksian error/kesalahan. Pelannggaran spesifikasi HLL akan terdeteksi dan dilaporkan kepada programmer oleh compiler agar seger diperbaiki hingga mempermudah pembentukan machine language equivalent.
INTERPRETER
Interpreter adalah perangkat
lunak yang mampu mengeksekusi kode
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.
Interpreter atau
dalam bahasa Indonesia dikenal sebagai Juru Bahasa berbeda dengan Translator
atau penterjemah dalam segi media yang dipakai untuk menerjemahkan. Interpreter
akan menterjemahkan bahasa sumber ke dalam bahasa sasaran secara langsung atau
orally sementara translator akan menerjemahkan bahasa sumber ke bahasa sasaran
secara tertulis.
Java dijalankan
menggunakan interpreter yaitu Java Virtual Machine (JVM). Hal ini menyebabkan
source code Java yang telah dikompilasi menjadi Java bytecodes dapat
dijalankan pada platform yang berbeda-beda.
JADI, DILIHAT DARI PENJELASAN SEBELUMNYA DAPAT
DISIMPULKAN BAHWA
1.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.
2.INTERPRETER
Interpreter adalah perangkat
lunak yang mampu mengeksekusi kode 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.
=> Untuk lebih jelasnya MENGENAI perbedaan antara Compiler dan Interpreter, mari kita lanjutkan KE BAWAH
PERBEDAAN ANTARA COMPILER
DENGAN INTERPRETER
1. Saat kompiler menjalankan program hasil,
ia dapat melakukan tanpa butuh kode
sumber. Kalau interpreter butuh kode sumber.
2. Jika dengan kompiler, maka
pembuatan kode yang bisa dijalankan mesin dilakukan dalam 2 tahap terpisah, yaitu parsing
(pembuatan kode objek) dan linking (penggabungan kode
objek dengan
library ). Kalau interpreter tidak ada proses terpisah.
3. JIka compiler membutuhkan
linker untuk menggabungkan kode objek dengan berbagai macam library demi menghasilkan suatu
kode yang bisa dijalankan oleh
mesin. Kalau interpreter tidak butuh linker
untuk menggabungkan kode objek dengan berbagai
macam library.
4. Interpreter cocok untuk membuat /
menguji coba modul (sub- routine /
program-program kecil). Maka compiler agak
repot karena untuk mengubah
suatu modul / kode objek kecil, maka harus dilakukan proses linking / penggabungan kembali semua objek dengan library yang diperlukan.
5. Pada kompiler bisa dilakukan
optimisasi / peningkatan kualitas kode yang bisa dijalankan. Ada yang dioptimasi supaya lebih cepat, ada yang
supaya lebih kecil, ada yang dioptimasi untuk sistem dengan banyak
processor. Kalau interpreter susah atau bahkan tidak bisa dioptimasikan.
=> DILIHAT DARI PENJELASAN SERTA SEJARAH SEJARAH
COMPILER DAN INTERPRETER SEBELUMNYA,
KAMI MENYIMPULKAN BAHWA
Mereka berdua
sama seperti mereka mencapai tujuan yang sama, tetapi inheren berbeda tentang
bagaimana mereka mencapai tujuan itu. Kode dikompilasi mengambil program
(source) ditulis dalam beberapa jenis bahasa pemrograman, dan kemudian akhirnya
menerjemahkannya ke dalam kode obyek atau bahasa mesin. Kode dikompilasi
melakukan pekerjaan jauh lebih efisien, karena menghasilkan program bahasa
mesin lengkap, yang kemudian dapat dieksekusi. Penafsir menerjemahkan instruksi
satu per satu waktu, dan kemudian mengeksekusi instruksi tersebut segera.
Compiler sendiri merupakan program komputer yang ditulis biasanya dalam
beberapa implementasi bahasa.
Compiler dan interpreter keduanya apa yang kita sebut penerjemah.
Tujuan mereka adalah untuk menerjemahkan kode pemrograman bahasa sumber seperti
(C + +, VB, Java, perakitan dan sebagainya) ke dalam bahasa tingkat rendah
(bahasa mesin) yang dimengerti oleh komputer.
Bagaimana penerjemah berbeda:
Compiler menerjemahkan kode sorce sekaligus.
Interpreter menerjemahkan kode sumber satu baris seluruh pada suatu waktu.
Assembler adalah program utilitas yang digunakan untuk menerjemahkan pernyataan bahasa assembly ke dalam kode mesin komputer target.
Bagaimana penerjemah berbeda:
Compiler menerjemahkan kode sorce sekaligus.
Interpreter menerjemahkan kode sumber satu baris seluruh pada suatu waktu.
Assembler adalah program utilitas yang digunakan untuk menerjemahkan pernyataan bahasa assembly ke dalam kode mesin komputer target.
SELESAI
terimakasih kepada :
1. ALLAH SWT
2. INTERNET
3. GOOGLE
4. BESERTA SUMBER: endimulyadi210.blogspot.com
5. EDITED BY : Dhony Setyawan