Anda di halaman 1dari 14

PENDAHULUAN

APA ITU KOMPILER?

Kompiler adalah program yang menerjemahkan


bahasa pemrograman (PASCAL, C, PL/I,
FORTRAN,JAVA, COBOL) ke dalam bahasa
mesin.

Bahasa Mesin
Bahasa mesin adalah bahasa asli yang digunakan
oleh mesin komputer.
Bahasa mesin berupa deretan bit, hingga
membentuk numerik biner atau diringkas
menjadi Heksadesimal.
Contoh: Untuk mesin IBM/370
0001100000110101 biner
1835
Heksadesimal

Bahasa Assembly
Bahasa assembly dapat dikatakan sebagai bahasa
pemrograman pertama, karena telah berbentuk
string dan lebih mudah dimengerti manusia.
String tersebut biasa disebut mnemonic.
Contoh:
LR 3,5
Copy isi general register 5 ke general register 3

Bahasa Tingkat Tinggi


Bahasa pemrograman tingkat tinggi (High Level
Language) merupakan bahasa pemrograman
yang mendekati bahasa manusia,sehingga lebih
mudah dimengerti. Seperti PASCAL, C, PL/I,
FORTRAN, JAVA, COBOL. Selain itu satu
perintah dalam bahasa tingkat tinggi dapat
diterjemahkan beberapa baris dalam bahasa
yang lebih rendah tingkatannya.

Contoh : Bahasa Pascal


X:= Y + Z;
Diterjemahkan kedalam bahasa Assembly (yang
lebih rendah tingkatanya) untuk mesin IMB/370
menjadi:
L 3,Y
Load Y ke register 3
A 3, Z Add Z
ST 3, X
Simpan hasilnya ke X.

Istilah-Istilah Penting
Source Language: Bahasa (tingkat tinggi) yang
menjadi masukan bagi kompiler.
Source Code: Program dalam bahasa sumber (bahasa
tingkat tinggi) yang akan dikompilasi.
Object Language: Bahasa yang digunakan oleh
program hasil kompilasi (object code). Bahasa ini
digolongkan kedalam bahasa mesin.
Object Code:Program hasil keluaran dari kompiler.

Lanjutan
Object File/Module: Hasil kompiler biasanya disimpan
dalam bentuk file di piranti penyimpanan. File ini
berakhiran .OBJ.
Target Machine: Komputer yang digunakan untuk
menjalankan program hasil kompiler.
Cross Compiler: Kompiler yang digunakan untuk
menghasilkan Object Code yang dijalankan pada
jenis komuter yang berbeda.

Kompiler dan Interpreter


Program penerjemah dari bahasa assembly ke
bahasa mesin adalah Assembler. Sedangkan
kompiler menerjemahkan bahasa tingkat tinggi
ke dalam bahasa assembly.
Interpreter tidak menerjemahkan semua baris
perintah dalam suatu program, tetapi hanya
menganalisis kemudian langsung mengeksekusi
tiap baris perintah.

Skematis Proses Kompilasi

Tahapan Kompiler

Lexical Analysis ( Scanner )


Sering disebut dengan scanner, bertugas sebelum proses

Syntax Analytic, dan intermediate code dilakukan


Tugasnya mendekomposisi program sumber menjadi
bagian bagian terkecil

Lexical Analysis ( Scanner )

Lexical Analysis ( Scanner )