Anda di halaman 1dari 6

SATUAN ACARA PERKULIAHAN (SAP)

Nama Mata Kuliah : Teknik Kompilasi


Kode Mata Kuliah : TI 034
Bobot Kredit : 3 SKS
Semester Penempatan : IV
Kedudukan Mata Kuliah : Mata Kuliah Keahlian Berkarya
Mata Kuliah Prasyarat : -
Penanggung Jawab Mata Kuliah : Asrul, ST

Pertemua Pokok Bahasan /


Tehnik
n/ Tujuan Sub Pokok Bahasan dan Sasaran Belajar / Media
Pembelajara Evaluasi Referensi
Minggu Instruksional Tujuan Instruksional Khusus (TIK) Pembelajaran
n
Umum (TIU)
1 1. Konsep Dasar 1.1. Motivasi Ceramah Papan Tulis & Membuat kompilator 1,2
TIU : - Mahasiswa mengetahui tujuan pembelajaran OHP sederhana
mata kuliah teknik kompilasi sebgaiamana pada
Mahasiswa
- Mahasiswa mengetahui hal-hal yang akan subbab1.3 ref.[1] atau
memahami konsep
dipelajasri pada matakuliah ini. bab 2 ref.[2]
dan cara kerja
1.2. Bagian-bagian compiler (kompilator)
kompilator.
- Mahasiswa dapat menyebutkan definisi dari
istilah-istilah yang digunakan dalam
kompilasi
- Mahasiswa dapat menjelaskan fase-fase
kompilator.
- Mahasiswa dapat menjelaskan fase
penganalisa leksikal
- Mahasiswa dapat menjelaskan fase parser
- Mahasiswa dapat menjelaskan fase code
generator
1.3. Representasi Bahasa-bahasa Komputer
- Mahasiswa dapat mengekspresikan suatu
bahasa komputer kedalam suatu tata bahasa
- Mahasiswa dapat membuat syntax diagram
dari suatu tata bahasa.
1.4. Kompilator Recursive-Descent Expression
- Mahasiswa dapat membangun kompilator
sederhana menggunakan teknik Recursive-
Descent.
2 2. Input dan 2.1. Penganalisa Leksikal Sebagai Bagian dari Ceramah Papan Tulis & 1,2
Analisa Leksikal Kompilator. OHP
TIU: - Mahasiswa dapat menjelaskan cara kerja
penganalisa sintaks dan bagaimana
Mahasiswa
penganalisa sintaks berhubungan dengan
memahami strategi
bagian lain dari kompilator
pada system input
2.2. System Input
dan cara kerja
- Mahasiswa dapat membangun modul system
penganalisa
input untuk penganalisa leksikal
leksikal.
2.3. Analisa Leksikal
- Mahasiswa dapat menyebutkan
definisi/istilah dalam bahasa formal
- Mahasiswa dapat membuat abstraksi bahasa
melalui ekspresi regular, definisi regular,
otomata hingga.
- Mahasiswa dapat mengimplementasikan
NFA kedalam suatu program.
3 3. Tata bahasa 3.1. Konsep Contex Free Grammar (CFG) Ceramah Papan Tulis & - Mhs diberikan 1,2
Context-Free - Mahasiswa dapat menyebutkan definisi OHP tatabahasa one line
CFG. programming
TIU: - Mahasiswa dapat merumuskan CFG dari
- Menentukan token
Mahasiswa dapat bahasa Contex Free
yang terlibat
mngenal CFG dn 3.2. Derivasi dan bentuk sentensial
bentuk-bentuk - Mahasiswa dapat melakukan derivasi secara - Membuat rumusan
turunannya serta umum, left maupun right dari suatu CFG token
mahasiswa dapat - Mahasiswa dapat memberi contoh viable - Membuat AH untuk
membangun CFG. prefix, handle dan bentuk sentential dari token tersebut
suatu derivasi - Melakukan derivasi
3.3. Pohon Parsing dan hubungannya dengan dari kalimat yang
sintaktik analisis diberikan
- Mahasiswa dapat membuat pohon parsing
- Menurunkan
dari suatu derivasi
- Mahasiswa dapat memberi contoh masalah kalimat lain dari
sintaktik maupun masalah semantik dari tatabahasa tsb.
suatu tata bahasa.
3.4. Right Linear grammar
- Mahasiswa dapat menyebutkan hubungan
mesin stata dan tatabahasa
- Mahasiswa dapat menentukan apakah suatu
tata bahasa adalah Right Linear
3.5. List, Recursion and Associativity
- Mahasiswa dapat menentukan produksi yang
left maupun right recursion dari suatu
tatabahasa
- Mahasiswa dapat menyebutkan hubungan
associativity dan recursion
- Mahasiswa dapat menentukan tata bahasa
yang left /right associative
3.6. Ambigous Grammar
- Mahasiswa dapat menentukan grammar yang
ambigous
4 4.Top-Down 4.1. Recursive Descent Parser Ceramah Papan Tulis & Mahasiswa membuat 1, 2
Parsing - Mahasiswa dapat menggunakan PDA OHP diagram state dari one
sebagai parsing top-down line programming
TIU: - Mahasiswa dapat menujukkan proses error
Mahasiswa dapat recovery
menggunakan - Mahasiswa dapat mengimplemnetasikan
teknik topdown Attributed grammars pada PDA
parsing : recursive - Mahasiswa dapat membuat tabel parsing
descent parser dan berdasarkan PDA
LL(1)
5 4. Top-Down 4.2 LL(1) grammars Ceramah Papan Tulis & 1, 2
Parsing (Lanjutan) - Mahasiswa dapat menjelaskan konsep tata OHP
bahasa LL(1)
TIU: - Mahasiswa dapat menentukan himpunan
sda FIRST
- Mahasiswa dapat menentukan himpunan
FOLLOW
- Mahasiswa dapat menentukan himpunan
LL(1) selection
- Mahasiswa dapat membuat tabel parsing
LL(1)
- Mahasiswa dapat menerapkan Penanganan
kesalahan panic mode

6 4. Top-Down 4.3 Modifying grammars Ceramah Papan Tulis & Mahasiswa 1, 2


Parsing (lanjutan) - Mahasiswa dapat memodifikasi grammar OHP memodifikasi tata
agar LL(1), menggunakan teknik-teknik left- bahasa one line
TIU: factoring, corner-subtitution, singleton programming agar
sda substitution, eliminasi ambiguitas, eliminasi LL(1) dan
left recursion, eliminasi Unreachable membuatkan tabel
Productions pasing LL(1)-nya
- Mahasiswa dapat mengimplementasikan
LL(1) parser

7 5. Bottom-Up 5.1 Cara Kerja Konsep Bottom Up Ceramah Papan Tulis & 1, 2
Parsing - Mahasiswa dapat menyebutkan cara kerja OHP
teknik parsing bottom-up
TIU: - Mahasiswa dapat menunjukkan cara
Mahasiswa dapat menangani errror recovery dari teknik
menggunakan bottom-up
teknik bottom-up
parsing: LR(0), 5.2 Tabel Parsing LR
SLR(1), LR(1), - Mahasiswa dapat mengidentifikasikan
LALR(1) tatabahasa LR(0)
- Mahasiswa dapat membuat tabel parsing
LR(0)

8 5. Bottom-Up 5.2 Tabel Parsing LR (lanjutan ) Ceramah Papan Tulis & Mahasiswa membuat 1, 2
Parsing (lanjutan) - Mahasiswa dapat mengidentifikasikan OHP tabel parsing SLR(0)
tatabahasa SLR(1) bahasa one line
TIU: - Mahasiswa dapat membuat tabel parsing programming
sda SLR(1)
- Mahasiswa dapat mengidentifikasikan
tatabahasa LR(1)
- Mahasiswa dapat membuat tabel parsing
LR(1)
- Mahasiswa dapat mengidentifikasikan
tatabahasa LALR(1)
- Mahasiswa dapat membuat tabel parsing
LALR(1)
- Mahasiswa dapat merepresentasikan tabel
LR dalam bahasa pemrograman

9 Diskusi - review kompilasi sampai tahapan parsing Diskusi Papan Tulis & Mahasiswa 1, 2
OHP berkelompok diberi
TIU: memahami tugas mengarang
proses kerja one bahasa yang
pass compiler mengandung operasi
aritmatika, cetak,
operasi cabang/
bersyarat. Dirumuskan
dalam tata bahasa
Mahasiswa
mengimplementasikan
menjadi one pass
compiler berdasarkan
tugas parser yang
diminta (rec-descn,
LL, LR)
10. Quiz / presentasi Diskusi Papan Tulis & Mahasiswa 1, 2
project OHP merepresentasikan
kompilasi bahasa
TIU: masing yang telah
Mahasiswa dapat dibuat, dimulai dari
mengimplementasi tatabahasa, rumusan
kan parsing token, diagram
pengenalan token,
diagram/tabel parsing,
dan bagaimana
diimplementasikan di
program mereka.
11. UJIAN TENGAH SEMESTER

12. 6. Analisa Semantik Syntax-directed definition


Translation scheme
3.7. Syntax-Directed translation
- Mahasiswa dapat menngunakan alat-alat
bantu tata bahasa augmented dan attributed
dalam mengimplementasikan tatabahasa.

13. 7. Membangun 6.1 Intermediate Languages Ceramah Papan Tulis & 1, 2


Code dan Tabel - Mahasiswa dapat merepresentasikan bahasa OHP
simbol kedalam bentuk triples, quads, dan postfix
TIU: 6.2 Table simbol
Mahasiswa dapat - Mahasiswa dapat menyebutkan apa yang
membangun dimaksud dengan tabel simbol
intermediate code, - Mahasiswa dapat menyebutkan kegunaan
dan dapat tabel simbol
mengelola tabel 6.3 Struktur Data Tabel Simbol
simbol. - Mahasiswa dapat membentuk struktur data
tabel simbol
- Mahasiswa dapat merepresentasikan tipe
variabel

14 8. Strategi 7.1 Optimisasi Parser Ceramah Papan Tulis & 1, 2


Optimisasi - Mahasiswa dapat mengaplikasikan konsep
optimasi parser OHP
7.2 Linear (peephole) Optimizations
- Mahasiswa dapat mengaplikasikan konsep
optimasi peephole

7.3 Optimisasi Struktural


- Mahasiswa dapat mengaplikasikan konsep
optimasi struktural

Referensi :
1. Holub, A. I., Compiler Design in C. Prentice-Hall International, Inc. Englewood Cliffs, New-Jersey, 1990.
2. Aho, A. V., R. Sethi, and J. D. Ullman. Compiler: Principles, Techniques, and Tools. Addison Wesley Publishing Company, Reading,
Massachusetts, 1988.
3. Tremblay, Jean-Paul, Paul G. Sorenson, The Theory and Practice of Compiler, McGraw-Hill Co, New York, 1985
4. Sukamdi, Merekayasa Interpreter (Sebuah Penerapan Teknik Kompilasi), Jakarta, PT Elex Media Komputindo, 1995.
5. Pittman, T., James Peters, The Art of Compiler Design, Theory & Practice, Englewood Cliffs, New Jersey, Prentice-Hall, Inc, 1992.
6. Firrar Utdirartomo, Teknik Kompilasi, Yogyakarta, J&J Learning, 2001.
7. Sumantri Slamet, Heru S., Teknik Kompilasi, Jakarta, PT Elex Media Komputindo, 1995.
8. D. Suryadi H.S., Pengantar Automata Bahasa Formal dan Kompilasi, Jakarta, Penerbit Gunadarma.

Anda mungkin juga menyukai