Penerjemah bahasa pemrograman dibedakan menjadi 3 (tiga) macam, yaitu assembler, kompiler, dan interpreter.
1) Asembler adalah program yang digunakan
untuk menerjemahkan kode sumber dalam bahasa rakitan(assembly) ke
dalam bahasa mesin.
2) Kompiler adalah program penerjemah yang mengonversi
semua kode sumber selain dalam bahasa rakitan menjadi kode objek. Hasil berupa
kode objek inilah yang dapat dijalankan oleh komputer. Proses untuk melakukan
penerjemahan ini biasa disebut kompilasi.
3) Intepreter adalah program yang menerjemahkan
satu per satu instruksi dalam kode sumber kemudian menjalankan instruksi yang
telah diterjemahkan tersebut.
Perangkat lunak bahasa pemrograman (language software) merupakan
program yang digunakan untuk menerjemahkan perintah-perintah yang ditulis dalam
bahasa program ke dalam bahasa mesin sehingga dapat diterima dan dimengerti
oleh komputer.
Pada dasarnya bahasa komputer dapat dibedakan menjadi empat macam, yaitu
bahasa mesin dan bahasa assembly (kedua bahasa ini termasuk bahasa tingkat
rendah/low level language), bahasa tingkat tinggi (high level
language), dan bahasa generasi keempat.
1) Bahasa mesin
Bahasa mesin termasuk ke dalam bahasa tingkat rendah (low level
language) karena sifat dari bahasa mesin lebih berorientasi pada
mesin. Bahasa ini hanya akan dipahami oleh komputer itu sendiri. Bahasa ini
berupa kode-kode yang terdiri dari sekumpulan angka yang ada di dalam komputer
yang biasanya diwakili oleh kode angka 1 (satu) dan 0 (nol). Kode ini merupakan
sinyal elektronik yang memberitahu komputer apa yang harus dikerjakan. Dalam
penggunaannya biasanya intruksi dituliskan dalam bentuk bahasa pemrograman yang
akan disampaikan ke kompiler, assembler, atau interpreter yang bertugas untuk
menerjemahkan bahasa pemrograman tadi ke bahasa mesin.
Assembler merupakan sebuah program. Program ini mengambil informasi yang
dituliskan oleh programmer dalam bahasa assembly dan menerjemahkannya ke sebuah
program yang dapat dieksekusi komputer. output assembler harus diproses oleh
linker untuk menghasilkan program akhir.
2) Bahasa assembly
Bahasa asembly adalah bahasa pemrograman yang menggunakan bahasa rakitan.
Bahasa assembly kebanyakan digunakan untuk pengendalian hardware yang
diwujudkan dalam kependekan kata-kata sebagai pengganti kode-kode biner,
misalnya JNZ (jump non zero) yang artinya lompatlah jika tidak
sama dengan nol. Kelanjutan dari bahasa assembly adalah sebuah program yang
berguna untuk mengambil informasi yang dituliskan oleh seorang programmer dalam
bahasa assembly serta menerjemahkannya ke dalam sebuah program yang dapat
dieksekusi oleh komputer, program ini dinamakan assembler. Output
assembler harus diproses oleh linker untuk menghasilkan program akhir.
3) Bahasa tingkat tinggi (high
level languange)
Bahasa tingkat tinggi memiliki arti bahwa bahasa ini lebih mudah dimengerti
oleh banyak orang karena memang dirancang untuk orang yang awam. Bahasa
pemrograman yang termasuk dalam bahasa tingkat tinggi adalah sebagai berikut :
a) BASIC (Beginners All-purposes Symbolic Instruction Code)
Bahasa program ini dikembangkan pada tahun 1965 di Darmouth College.
Penciptanya adalah John Kemeny dan Thomas Kurtz. BASIC dipergunakan dalam
aplikasi matematika. Selain itu, BASIC juga digunakan dalam beberapa aplikasi
lainnya seperti akuntasi, permainan, file simulasi, dan lain-lain.
Keunggulan BASIC terletak pada kemudahan dalam pemakaiannya, sedangkan
kelemahannya adalah tidak mendukung operasi bilangan kompleks dan penanganan
terhadap berkas sangat terbatas sehingga tidak cocok untuk aplikasi bisnis.
b) LOGO
Bahasa ini dikembangkan untuk pendidikan dan simulasi pengajaran pada
anak-anak dalam menyelesaikan masalah dan melakukan pemrograman. Ditemukan pada
tahun 1967 oleh Seymour Papert dengan menggunakan LISP, yaitu satu jenis bahasa
pemrograman untuk kecerdasan buatan. Logo sangat mudah digunakan untuk membuat
gambar, sehingga banyak digunakan dalam menghasilkan laporan-laporan bisnis
dalam bentuk grafik.
c) COBOL (Common Business Oriented Language)
Program jenis ini sering digunakan dalam dunia bisnis dan komersial, mulai
dikembangkan pada tahun 1959. Namun sampai saat ini, program ini masih banyak
digunakan pada jenis komputer minicomputer dan mainframe. COBOL memiliki
keunggulan-keunggulan sebagai berikut.
1) Memiliki kode untuk semua flatform yang sama, sehingga tidak tergantung
pada mesin.
2) Menggunakan kata-kata bahasa Inggris, sehingga sangat mudah dipahami
oleh programmer.
3) Penanganan masukan dan keluaran mudah dilakukan.
4) Penanganan terhadap berkas sudah tersedia dan bahkan mendukung berbagai
macam tipe-tipe berkas seperti sekuensial dan indeks.
Kelemahan dari bahasa ini adalah struktur penulisan program yang sangat
banyak dan sangat kaku sehingga membuat programmer menjadi lelah dan bosan.
d) PASCAL
Bahasa ini ditemukan oleh Nicklaus Wirth tahun 1971. Bahasa ini dibuat
untuk pengajaran pemrograman. Bahasa ini sangat populer di kalangan mahasiswa
ilmu komputer dan teknik. Pascal memiliki keunggulan dibandingkan Fortran
maupun Basic, yaitu sangat mudah dipelajari serta memiliki dukungan
fungsi-fungsi matematika yang sangat lengkap. Namun Pascal juga memiliki
kelemahan, yaitu tidak dapat mendukung operasi bilangan kompleks dan tidak
mendukung sarana aplikasi bisnis. Keberadaan Pascal dapat pula dijadikan bahasa
dasar dalam pembuatan kode perangkat lunak Delphi (software untuk pengembangan
program di lingkungan Windows). Pascal juga digunakan sebagai landasan
pembuatan kode pada Kylix, yaitu software pengembang program di lingkungan
Linux.
e) Fortran (Formula Translator)
Fortran merupakan bahasa tingkat tinggi yang pertama kali diciptakan.
Bahasa ini mulai dikembangkan pada tahun 1956 oleh John Backus di IBM. Fortran
digunakan dalam bidang aplikasi matematika, yaitu dalam hal perumusan dan perhitungan
sehingga menjadi andalan keunggulan dari bahasa ini. Namun Fortran memiliki
kelemahan, yaitu operasi masukan dan keluarannya sangat kaku dan sulit
dipahami. Untuk membuat bahasa fortran, seorang programmer tidak harus
mengetahui bahasa mesin, tetapi harus memahami tata bahasa dan peraturan bahasa
fortran.
f) Algol (Algoritma Language)
Algol merupakan bahasa automatic yang cocok untuk memecahkan permasalahan
yang membutuhkan perhitungan numerik untuk beberapa pengolahan logic.
g) PL/1 (Programming Language)
Programming language merupakan bahasa komputer yang dapat digunakan dalam
segala bahasa. Pada kenyataannya bahasa ini sulit dipelajari dan hanya dapat
digunakan pada mesin IBM.
h) RPG (Report Program Generation)
RPG adalah program untuk pengolahan laporan. Bahasa ini sangat populer di
lingkungan minicomputer dan mainframe IBM. RPG diluncurkan pertama kali pada
tahun 1964.
i) APL (Aritmathic Programming Language)
APL adalah bahasa komputer untuk memecahkan soal-soal matematika (ilmu
hitung). Diperkenalkan dan diciptakan oleh Kenneth Iverson pada tahun 1962.
Bahasa ini menggunakan keyboard khusus yang berisikan simbol-simbol yang
kompleks yang memungkinkan untuk melakukan penyelesaian matematika yang
kompleks.
4) Bahasa pemrograman generasi
keempat
Bahasa pemrograman generasi keempat meliputi Microsoft Visual Basic, Visual
J++, dan Visual C++ yang dikembangkan dari keluarga besar bahasa tingkat tinggi
untuk memudahkan pemrograman.