Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

MATERI PERKULIAHAN TEKNIK KOMPILASI

Presentasi serupa


Presentasi berjudul: "MATERI PERKULIAHAN TEKNIK KOMPILASI"— Transcript presentasi:

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

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

3 Kode Antara

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

5 Jenis Kode Antara Notasi Postfix N-Tuple

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

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

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

9 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}

10 Notasi Postfix Contoh : IF a > b THEN c := d ELSE c := e; Notasi Postfixnya : 1 a 2 b 3 > BR c 5 BZ e 6 c := 7 d 8 :=

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

12 Notasi Postfix Contoh : a:=1; WHILE a < 5 DO a:= a + 1; Notasi Postfixnya : 1 a a a 3 := 4 a := 6 < BR 8 BZ

13

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

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

16 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

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

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

19 Pembangkitan Kode

20 Penerjemahan ke bahasa assembly
Pembangkitan Kode Penerjemahan ke bahasa assembly

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

22 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

23 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

24 Pembangkitan Kode Alur tahapan kompilasi hingga pembangkitan kode

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


Download ppt "MATERI PERKULIAHAN TEKNIK KOMPILASI"

Presentasi serupa


Iklan oleh Google