TRANSLATOR
Translator adalah suatu program
atau metode dimana program tersebut mengambil input sebuah program lain yang
ditulis pada suatu bahasa program (source language) ke bahasa lain (object on
target language). Macam – macam translator antara lain : interpreter, compiler,
dan assembler.
Apa sih pengertian dari
interpreter, compiler, dan assembler beserta perbedaan nya ???
OK saya akan mencoba
menjelaskan nya :)
A. Pengertian 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.
Contoh bahasa pemrograman yang menggunakan compiler
adalah Pascal, C, Basic, dll.
B. Pengertian Interpreter
Interpreter adalah
perangkat lunak yang mampu mengeksekusi code program (yang di tulis programmer)
lalu menerjemahkan nya ke dalam bahasa mesin, sehingga mesin melakukan
instruksi yang diminta oleh programmer tersebut. Perintah (code) yang dibuat
programmer tersebut dieksekusi baris demi baris, sambil mengikuti logika yang
terdapat pada code tersebut. Interpreter tidak membangkitkan object code, hasil
transaksi nya hanya dalam bentuk internal.
Contoh bahasa pemrograman
yang menggunakan interpreter adalah PHP, ASP, Perl, dll. Biasanya di dalam
bahasa pemrograman berbasis web.
Perbedaan antara Compiler dengan Interpreter :
- Untuk menjalankan
menjalankan program hasil kompilasi (hasil compiler) dapat
dilakukan tanpa membutuhkan source code. Kalau interpreter membutuhkan
source code.
- 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
- 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.
- 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
- 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.
- Pada interpreter, kode
program tidak dapat dirahasiakan. Sedangkan pada compiler, kode program
bisa dirahasiakan, sebab yang dieksekusi adalah program yang dalam bentuk
kode mesin.
C. Pengertian Assembler
Bahasa assembly adalah sebuah program yang terdiri dari
instruksi-instruksi yang menggantikan kode-kode biner dari bahasa mesin dengan
“mnemonik” yang mudah diingat. Misalnya sebuah instruksi penambahan dalam
bahasa mesin dengan kode “10110011” yang dalam bahasa assembly dapat dibuat
dalam instruksi mnemonik ADD, sehingga mudah diingat dibandingkan dengan angka
0 dan 1, dalam setiap instruksi membutuhkan suatu operand baik berupa data
langsung maupun suatu lokasi memori yang menyimpan data yang bersangkutan. Bahasa
assembly sering juga disebut kode sumber atau kode simbolik yang tidak dapat
dijalankan oleh prosesor, sedangkan assembler adalah suatu program yang dapat
menerjemahkan program bahasa assembly ke program bahasa mesin. bahasa mesin
adalah kumpulan kode biner yang merupakan instruksi yang bisa dijalankan oleh
komputer. Program bahasa mesin sering disebut sebagai kode objek.

Comments
Post a Comment