Disusun Oleh :
Arbima Prayoga
2255201042
Dosen Pengampu :
GUNTORO,S.T.,M.KOM
TEKNIK INFORMATIKA
FAKULTAS ILMU KOMPUTER
UNIVERSITAS LANCANG KUNING
2023/2024
1. Apa yang kamu ketahui tentang penggolongan bahasa pemrograman berdasarkan
tingkat ketergantungannya dengan mesin?
Jawab: Karena komputer tidak mengerti bahasa alami(bahasa manusia),
komputer hanya mengerti bahasa mesin.
Dalam bahasa mesin perintah perintah direpresentasikan oleh dua angka saja
yaitu 0 dan 1.
Untuk membuat perintah mengetikkan huruf "A" misalnya, perlu rangkaian angka
0 dan 1, yaitu "01000001". 0 berarti
tidak ada arus, 1 berarti ada arus Bayangkan betapa susahnya mengoperasikan
komputer jika setiap orang harus
menghafalkan rangkaian angka angka tersebut. Oleh karena itulah diciptakan
bahasa permrograman yang menjadi
perantara manusia dengan komputer, manusia tidak perlu lagi menghafalkan
setiap instruksi yang harus
diperintahkan, manusia tinggal menggunakan bahasa permrograman. Bahasa
pemrograman tersebut
kemudian diterjemahkan oleh Interpreter/Compiler menjadi bahasa mesin,
setelah diterjemahkan barulah
komputer mengerti. Ibarat Turis yang berkunjung ke indonesia perlu penerjemah
agar turis tersebut bisa berkomunikasi dengan orang yang dikunjunginya.
a. Kompilator
b. Translator
c. Intepreter
d. Assembler
Jawab:
-kompilator = Istilah kompiler muncul karena dulu ada program yang
menggunakan subrutin-subrutin atau pustaka-pustaka untuk keperluan yang
sangat khusus yang dikumpulkan menjadi satu sehingga diistilahkan kompilasi
(kumpulan/paduan).
• Input berupa source code program seperti Pascal, C, C++.
• Object code adalah bahasa assembly.
• Source code dan data input diproses pada saat yang berbeda.
• Compile time adalah saat pengubahan dari source code menjadi object code.
• Runtime adalah saat eksekusi object code dan dapat menerima input data
Data user.
• Output : bahasa assembly. Kemudian oleh linker dihasilkan file EXE
Phase Synthesis :
Intermediate Code Generator
Intermediate code generator merupakan tahapan awal dari phase synthesis.
Proses yang dilakukan pada tahapan ini me-generate atau membangkitkan
suatu code berdasarkan parsing tree, lalu selanjutnya diterjemahkan ke dalam
bentuk three address code, quadruples atau triples.
Code Optimizer
Setelah melakukan tahapan intermediate code generator berikutnya yang
dilakukan adalah tahapan code optimizer. Adapun yang dilakukan pada
tahapan ini adalah mengoptimisasi code sehingga menjadi code yang
executable. Tahapan ini dilakukan untuk mempercepat waktu eksekusi dari
suatu program dengan cara menghilangkan redudansi pada code.
Code Generator
Tahapan code generator ini merupakan tahapan terakhir pada proses
kompilasi. Pada tahapan ini akan dilakukan penentuan register untuk masing-
masing variable lalu instruksi-instruksi dalam bentuk antara akan
diterjemahkan ke dalam Bahasa mesin, dan akhirnya akan menghasilkan
relocatable machine code atau assembly code.
Symbol Table Manager
Symbol Table adalah sebuah struktur data dengan record-record untuk setiap
identifier dengan field-field untuk setiap atribut dari identifier tersebut.Error
Handler Error handler merupakan bagian dari compiler untuk menangani dan
melaporkan jika ditemukan suatu error.
b. Intrepeter :
Perangkat lunak yang mampu mengeksekusi code program (yang ditulis oleh
programmer) lalu menterjemahkannya ke dalam 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. beberapa contoh produk yang ada di pasaran untuk
Cobol, PHP dan ASP.
b. Turbo C
d. Java
e. Visual basic
f. Turbo basic
Turbo Basic merupakan kompiler yang benar-benar menghasilkan kode biner yang
langsung dapat dijalankan pada sistem operasi MS-DOS.
g. Quick basic
3. Daftar Pusaka
http://kardian2011.blogspot.com/2011/03/pengertian-kompiler-dan- interpreter.html-
https://id.wikipedia.org/wiki/Turbo_Assembler
https://id.m.wikipedia.org/wiki/Visual _Basic
https://id.m.wikipedia.org/wiki/Java