Click disini untuk mendownload materi

Download Report

Transcript Click disini untuk mendownload materi

OLEH :
NUR FAHMI LUKMI
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
PENDAHULUAN

APA ITU KOMPILER?
“Kompiler adalah program yang
menerjemahkan bahasa pemrograman
(PASCAL, C, PL/I, FORTRAN,JAVA,
COBOL) ke dalam bahasa mesin.”
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
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
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
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
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
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.
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
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.
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
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.
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
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.
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
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.
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
Skematis Proses Kompilasi
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
Tahapan Kompiler
Lexycal Analysis
 Syntactic Analysis
 Intermediate Code Generation
 Optimization
 Object Code Generatio
Tahapan diatas biasanya tidak dilakukan
sekaligus, tetapi masih dibagi menurut
beberapa term atau disebut pass.

SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
Kompiler dengan 4 pass
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
Pass, Front End, Back End
Proses kompilasi dibuat beberapa pass
yang isinya adalah membaca program
dari suatu versi dan ditulis menjadi versi
yang baru.
Alasan menggunakan beberapa pass
adalah:
o Menyimpan pertanyaan-pertanyaan
yang belum terjawab dari awal.
o Keterbatasan memori.
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
Lanjutan
Tiga tahap pertama dari proses kompilasi,
yaitu Lexical Analysis, Parsing (Syntax
analysis), da Intermediate code
generation di sebut Font-end.
Dan dua tahap terakhir, yaitu optimisasi
dan object code generation di sebut
Back-end.
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
Menulis Kompiler
Kompiler pertama ditulis dengan bahasa assembly.
Langkah-langkah prosesnya adalah:
Langkah-langkah menggunakan kompiler:
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2
SEKIAN…..
SEMESTER V
COPYRIGHT@2011
PERTEMUAN 2