MATERI PERKULIAHAN TEKNIK KOMPILASI

Slides:



Advertisements
Presentasi serupa
TEKNIK KOMPILASI By Kustanto, S.T.,M.Eng.
Advertisements

Mulai Baca x x>x; if(x
STACK (Tumpukan) Tumpukan Koin Tumpukan Kotak.
Struktur Kontrol Struktur kontrol merupakan pengatur aliran program
STRUKTUR DATA PERTEMUAN 5
Pengertian Algoritma Sebuah algoritma merupakan deskripsi pelaksanaan suatu proses, dimana algoritma disusun oleh sederetan langkah instruksi yang logis.
Pengantar Teknik Kompilasi
PERTEMUAN V Logika Algoritma Algoritma : Metoda pemecahan suatu masalah langkah demi langkah. Karakteristik Algoritma :  Presisi ; langkah-langkahnya.
Analisis Semantik.
Reverse Polish Notation (RPN)
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
STRUKTUR COMPILLER.
MATERI PERKULIAHAN TEKNIK KOMPILASI
MATERI PERKULIAHAN TEKNIK KOMPILASI
TEKNIK KOMPILASI Team Penyusun – UNIVERSITAS GUNADARMA: Gopa Kustriono
Pengantar Teknik Kompilasi
Materi Kuliah 1. Pertemuan ke : 1 Pengenalan Komputer dan Pemrograman
MATERI PERKULIAHAN ANALISIS ALGORITMA
MATERI PERKULIAHAN ANALISIS ALGORITMA
MODEL KOMPILATOR FUNGSI UMUM BAGIAN KOMPILATOR Dosen Pengampu:
FUNGSI UMUM BAGIAN KOMPILATOR Dosen Pengampu: Istiqomah, s.kom
Penyusun : Selamat Subagio, S.Kom
STRUKTUR DATA IMPLEMENTASI STACK.
STRUKTUR DATA IMPLEMENTASI STACK.
STACK (Tumpukan) Tumpukan Koin Tumpukan Kotak.
TEKNIK KOMPILASI Team Penyusun : Gopa Kustriono Zulfiandri
STACK (Tumpukan) Tumpukan Koin Tumpukan Kotak.
STRUKTUR DATA IMPLEMENTASI STACK.
Analisa Semantik, Kode Antara,
PENGANTAR TEKNIK KOMPILASI
Stack (Tumpukan) Sumber Kepustakaan : putuputraastawa.files.wordpress.com/.../pert_5_sta...
Struktur Kontrol.
Analisis semantik, kode antara dan pembangkitan kode
SEMANTIKS Pertemuan Ke-3.
MATERI PERKULIAHAN TEKNIK KOMPILASI
MODEL KOMPILATOR FUNGSI UMUM BAGIAN KOMPILATOR Dosen Pengampu:
MATERI PERKULIAHAN TEKNIK KOMPILASI
Struktur Kontrol Struktur kontrol merupakan pengatur aliran program
Semantics Analyser Contoh : A := ( A+B) * (C+D)
kode antara dan pembangkit kode
Analisis Sintaks (Parsing)
MATERI PERKULIAHAN TEKNIK KOMPILASI
MATERI PERKULIAHAN TEKNIK KOMPILASI
MATERI PERKULIAHAN TEKNIK KOMPILASI
PEMROGRAMAN WEB DEWI SULISTIYARINI, S.KOM
Analisa Semantik, Kode Antara,
kode antara dan pembangkit kode
MATERI PERKULIAHAN TEKNIK KOMPILASI
MATERI PERKULIAHAN TEKNIK KOMPILASI
MATERI PERKULIAHAN TEKNIK KOMPILASI
Pertemuan 1.
STRUKTUR DATA IMPLEMENTASI STACK.
MATERI PERKULIAHAN TEKNIK KOMPILASI
STRUKTUR DATA IMPLEMENTASI STACK.
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
KODE ANTARA & PEMBANGKITAN KODE Ken Kinanti Purnamasari
TEORI BAHASA & OTOMATA (PENGENALAN KOMPILASI)
MATERI PERKULIAHAN TEKNIK KOMPILASI
MATERI PERKULIAHAN TEKNIK KOMPILASI
STRUKTUR DATA IMPLEMENTASI STACK.
MATERI PERKULIAHAN SISTEM OPERASI
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
STRUKTUR DATA IMPLEMENTASI STACK.
MATERI PERKULIAHAN TEKNIK KOMPILASI
TEKNIK KOMPILASI Team Penyusun : Gopa Kustriono Zulfiandri
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
Semantics Analyser by Kustanto
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
KODE ANTARA,PEMBANGKITAN KODE,PENANGANAN
Transcript presentasi:

MATERI PERKULIAHAN TEKNIK KOMPILASI KODE ANTARA & PEMBANGKITAN KODE 9 Ken Kinanti Purnamasari

Tahapan kompilasi yang dibuat untuk menerjemahkan program Kode Antara & Pembangkitan Kode Tahapan kompilasi yang dibuat untuk menerjemahkan program dari bahasa tingkat tinggi.

Kode Antara

Kode yang dibuat sebelum bahasa tingkat tinggi diterjemahkan ke dalam Kode Antara Kode yang dibuat sebelum bahasa tingkat tinggi diterjemahkan ke dalam bahasa assembly

Jenis Kode Antara Notasi Postfix N-Tuple

Keuntungan Kode Antara meringankan proses penerjemahan beberapa bahasa tingkat tinggi ke bahasa mesin meringankan proses optimasi meringankan proses pembacaan kode internal

Kerugian Kode Antara Butuh waktu yang lebih lama karena melakukan penerjemahan dua kali.

Notasi Postfix Notasi Sufix atau Reverse Polish Posisi operator di paling akhir Format: <operan><operan><operator> (a+b)*(c+d) ab+cd+*

IF <exp> THEN <stmt1> ELSE <stmt2> Notasi Postfix IF <exp> THEN <stmt1> ELSE <stmt2> <exp> <label1> BZ <stmt1> <label2> BR <stmt2> label1 label2 Keterangan : BZ : branch if zero (zero = salah ) {bercabang/meloncat jika kondisi yang dites salah} BR : branch {bercabang/meloncat tanpa ada kondisi yang dites}

Notasi Postfix Contoh : IF a > b THEN c := d ELSE c := e; Notasi Postfixnya : 1 a 9 2 b 10 15 3 > 11 BR 4 12 12 c 5 BZ 13 e 6 c 14 := 7 d 15 8 :=

WHILE <exp> DO <stmt> Notasi Postfix WHILE <exp> DO <stmt> <exp> <label2> BZ <stmt> <label1> BR label1 label2

Notasi Postfix Contoh : a:=1; WHILE a < 5 DO a:= a + 1; Notasi Postfixnya : 1 a 9 a 2 1 10 a 3 := 11 1 4 a 12 + 5 5 13 := 6 < 14 4 7 16 15 BR 8 BZ 16

N-Tuple Setiap baris boleh terdiri dari beberapa tupel Format : operator ... N-1 operan

N-Tuple Triples Notation Format : <operator><operan><operan>

N-Tuple Contoh : IF a > b THEN c := d ELSE c := e; Notasi Triples Notation-nya : >, a, b BZ, (1), (5) :=, c, d BR, ,(6) :=, c, e

N-Tuple Quadraples Notation Format : <operator><operan><operan><hasil>

N-Tuple Contoh : A := D * C + B / E Notasi Quadraples Notation-nya : *, D, C, T1 / , B, E, T2 +, T1, T2, A

Pembangkitan Kode

Penerjemahan ke bahasa assembly Pembangkitan Kode Penerjemahan ke bahasa assembly

(A+B) * (C+D) Pembangkitan Kode Contoh : Notasi Quadraples Notation-nya : +, A, B, T1 +, C, D, T2 *, T1, T2, T3

Pembangkitan Kode Ditranslasikan ke dalam bahasa Assembly menjadi: LDA A {muat isi A ke akumulator} ADD B {tambahkan isi akumulator dengan B} STO T1 {simpan isi akumulator ke T1} LDA C ADD D STO T2 LDA T1 MUL T2 STO T3

Pembangkitan Kode Kode assembly tersebut dapat dioptimasi menjadi : LDA A {muat isi A ke akumulator} ADD B {tambahkan isi akumulator dengan B} STO T1 {simpan isi akumulator ke T1} LDA C ADD D MUL T1 STO T3

Pembangkitan Kode Alur tahapan kompilasi hingga pembangkitan kode

REFERENSI . . . Firrar U., Teknik Kompilasi, J&J Learning Yogyakarta, 2001 Alfred v. a. & ullman J.D., Compilers Principles Technique and Tools, Addison Wesley, 1988