Pengantar Teknik Kompilasi

Slides:



Advertisements
Presentasi serupa
Oleh : Suparno Blog : Programming Language Pengen. Pengel. Data Elektronik.
Advertisements

TEKNIK KOMPILASI By Kustanto, S.T.,M.Eng.
Pengayaan Software/Hardware dan Pengantarmukaan
Teknik Kompilasi Febuari 2013.
Pengantar Teknologi Informasi
PEMROGRAMAN TERSTRUKTUR
Pengantar Teknik Kompilasi
TEKNIK KOMPILASI.
Perkembangan Bahasa.
Analisis Semantik.
KOMPILASI KOMPILATOR (COMPILER) adalah :
Konsep dan Notasi Bahasa
SOFTWARE PENDUKUNG DAN PENGOPERASIAN SISTEM INFORMASI
Bahasa Pemrograman Tingkat Tinggi
Komponen sebuah Kompilator
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
PERANGKAT LUNAK (SOFTWARE)
Pertemuan 1 & 2 Pendahuluan
Algoritma dan Pemrograman
Pengantar Teknik Kompilasi
TEKNIK KOMPILASI.
MODEL KOMPILATOR FUNGSI UMUM BAGIAN KOMPILATOR Dosen Pengampu:
FUNGSI UMUM BAGIAN KOMPILATOR Dosen Pengampu: Istiqomah, s.kom
KONSEP DASAR PEMROGRAMAN
PENGANTAR TEKNIK KOMPILASI
Teknik Kompilasi “Translator”
Bahasa Pemprograman Dasar
BAB 1 BAHASA PEMROGRAMAN
BAHASA PEMROGRAMAN TERSTRUKTUR
ALGORITMA & PEMROGRAMAN
BAHASA PEMROGRAMAN.
Analisa Semantik, Kode Antara,
Analisis semantik, kode antara dan pembangkitan kode
Pesan-pesan kesalahan
Pengantar Teknik Kompilasi
Pengantar Teknik Kompilasi
MODEL KOMPILATOR FUNGSI UMUM BAGIAN KOMPILATOR Dosen Pengampu:
Pengantar Teknik Kompilasi
Semantics Analyser Contoh : A := ( A+B) * (C+D)
Analisis Sintaks (Parsing)
Analisa Semantik, Kode Antara,
Teknik Kompilasi “Translator”
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
DASAR PEMROGRAMAN KOMPUTER
TEORI BAHASA & OTOMATA (PENGENALAN KOMPILASI)
Proses kompilasi COMPILATOR.
ALGORITMA & PEMROGRAMAN
Lecturer Note II Turbo Pascal & Pemrograman
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
Pengantar Teknologi Informasi
Pengantar Pemrograman
Pengantar Teknologi Informasi
TEKNIK KOMPILASI PERTEMUAN II.
Pengantar Teknologi Informasi
Teknik Kompilasi Abdul Wahid, ST, M.Kom
TEKNIK KOMPILASI Pertemuan III.
Pengantar Pemrograman
Pengenalan Kompilasi & Klasifikasi Tatabahasa Formal menurut Chomsky
Pengantar Teknik Kompilasi
Ilustrasi Proses Kompilasi
Pengantar Teknik Kompilasi
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
Automata Hingga Deterministik (AHD)
Pengantar Pemrograman
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
Semantics Analyser by Kustanto
Dasar Pemrograman Pengenalan Nurul Anisa Sri Winarsih, M. CS
Pengantar Teknologi Informasi
ANALISIS SEMANTIK, KODE ANTARA, DAN PEMBANGKITAN KODE
KODE ANTARA,PEMBANGKITAN KODE,PENANGANAN
Transcript presentasi:

Pengantar Teknik Kompilasi Pendahuluan Tujuan Pembelajaran : Mahasiswa memahami cara kerja serta proses yang terjadi pada sebuah Compiler. Mahasiswa memahami konsep pembuatan sebuah Compiler. Mahasiswa mengetahui bagaimana sebuah bahasa pemrograman dapat diterjemahkan oleh mesin. Metari Pembelajaran Bentuk-bentuk karakter dan kelas Grammar. Ekspresi Regular dan Automata. Analisa Leksikal sebagai tahap awal kompilasi. Analisa Sintaks, bentuk-bentuk derivasi serta implementasi parsing. Analisa Semantik dan tahapan Sintesa. Penanganan kesalahan kompilasi dan fungsi tabel informasi. Pendahuluan

Pengantar Teknik Kompilasi 1. Bahasa Pemrograman Bahasa mesin Bahasa Assembly Bahasa Pemrograman Bahasa Tingkat tinggi Bahasa Problem Oriented Pendahuluan

Pengantar Teknik Kompilasi Bahasa tingkat tinggi (user oriented) lebih banyak memberikan fungsi kontrol program, kalang, block, dan prosedur. Bahasa mesin merupakan bentuk terendah dari bahasa komputer. Instruksi direpresentasikan dalam kode numerik. Program Language Bahasa problem oriented sering juga dimasukkan sebagai bahasa tingkat tinggi, misalnya SQL, Myob, dsb. Bahasa Assembly merupakan bentuk simbolik dari bahasa mesin. Kode misalnya ADD, MUL, dsb Pendahuluan

Pengantar Teknik Kompilasi 2. Translator Translator melakukan pengubahan source code / source program kedalam target code / object code Interpreter dan Compiler termasuk dalam kategori translator. Interpreter Translator Tidak membangkitkan object code. Source code dan data diproses bersamaan. Contoh: BASICA, SPSS, DBASE III. Assembler Compiler Source Code adalah bahasa tingkat tinggi. Object Code adalah bahasa mesin atau assembly. Source code dan data diproses tidak bersamaan. Contoh: PASCAL, C. Source Code adalah bahasa Assembly Object Code adalah bahasa mesin. Contoh: Turbo Assembler. Pendahuluan

Pengantar Teknik Kompilasi Interpreter Penanganan Kesalahan Program Sumber Analisa Leksikal Analisa Sintaks Intermediate Program Interpretasi Hasil Operasi Pengelolaan Tabel Pendahuluan

Pengantar Teknik Kompilasi Assembler Source Code Assembler Object Code Lingker File Target .ASM .OBJ .EXE / .COM Proses Sebuah Kompilasi pada Bahasa Assembler Source Code adalah bahasa Assembler, Object Code adalah bahasa Mesin. Object Code dapat berupa file object (.OBJ), file .EXE, atau file .COM Contoh : Turbo Assembler (dari IBM) dan Macro Assembler (dari Microsoft). Pendahuluan

Pengantar Teknik Kompilasi Compiler Definisi : Kompilator (compiler) adalah sebuah program yang membaca suatu program yang ditulis Dalam suatu bahasa sumber (source language) dan menterjemahkannya kedalam suatu bahasa sasaran (target language). Proses kompilasi dapat digambarkan melalui sebuah blok diagram sebagai berikut : Compiler Program sumber Bahasa sasaran Pesan-pesan kesalahan (error messages) Proses Kompilasi dikelompokkan kedalam dua kelompok besar : 1. Analisa : Program sumber dipecah-pecah dan dibentuk menjadi bentuk antara (Intermediate Representation ). 2. Sintesa : Membangun program sasaran yang diinginkan dari bentuk antara. Pendahuluan

Bagan pokok proses kompilasi Pengantar Teknik Kompilasi Blok Diagram Program Sumber Program Sasaran ANALISA SINTESA Penganalisa Semantik Pembangkit Kode antara Penganalisa Leksikal (scanner) Penganalisa Sintaks (parser) Pembentuk kode Pengoptimal kode TABEL SIMBOL Bagan pokok proses kompilasi Pendahuluan

Pengantar Teknik Kompilasi Keterangan 1. Program Sumber ditulis dalam bahasa sumber, misal Pascal, Assembler, dsb. 2. Program Sasaran dapat berupa bahasa pemrograman lain atau bahasa mesin pada suatu komputer. 3. Scanner : Memecah program sumber menjadi besaran leksik/token. 4. Parser : Memeriksa kebenaran dan urutan kemunculan token. 5. Penganalisa semantik : Melakukan analisa semantik, biasanya dalam realisasi akan digabungkan Dengan intermediate code generator (bagian yang berfungsi membangkitkan kode antara). 6. Pembentuk Kode : Membangkitkan kode objek 7. Pengoptimal Kode : Memperkecil hasil dan mempercepat proses. 8. Tabel : Menyimpan semua informasi yang berhubungan dengan proses kompilasi. Pendahuluan

Pengantar Teknik Kompilasi Library Object Code Source Code 1 Compiler 1 Object Code 1 Source Code 2 Compiler 2 Object Code 2 Executable Lingker Source Code n Compiler n Object Code n Pembentukan file Executable berdasar dari beberapa Source Code. Source Code dapat terdiri dari satu atau lebih behasa pemrograman. Pendahuluan

Pengantar Teknik Kompilasi Pembuatan Compiler Pembuatan kompilator dapat dilakukan dengan : Bahasa Mesin Tingkat kesulitannya tinggi, bahkan hampir mustahil dilakukan. 2. Bahasa Assembly Bahasa Assembly bisa dan biasa digunakan sebagai tahap awal pada proses pembuatan sebuah kompilator. Bahasa Tingkat Tinggi lain pada mesin yang sama Proses pembuatan kopilator akan lebih mudah. Bahasa tingkat tinggi yang sama pada mesin yang berbeda Misal, pembuatan kompilator C untuk DOS, berdasar C pada UNIX. Bootstrap Pembuatan kompilator secara bertingkat. Pendahuluan