21/11/2016. Pohon Sintaks. Syntax?? Proses Penurunan. Analisis Syntax (Parser) Metode Parsing ANALISIS SINTAKS TEKNIK KOMPILASI
|
|
- Sonny Widjaja
- 6 tahun lalu
- Tontonan:
Transkripsi
1 Pohon Sintaks TEKNIK KOMPILASI ANALISIS SINTAKS SHINTA P. SARI Jurusan Informatika Fasilkom Universitas Indo Global Mandiri Berupa pohon penurunan yang menggambarkan bagaimana memperoleh suatu string dengan cara menurunkan symbolsymbol variable menjadi symbol-symbol terminal. Eg : Aturan produksi Bahasa bebas konteks S AB A aa a B bb b Syntax?? himpunan peraturan yang menjelaskan bagaimana simbol peraturan yang menjelaskan bagaimana simbol-simbol bahasa dapat dirangkai bersama untuk membentuk pernyataan (statement) yang berarti. Aturan formal yang mengatur bagaimana seseorang menulis instruksi yang valid dalam pada suatu bahasa Proses Penurunan Left Most Derivation (Terkiri) Simbol variable terletak disebelah kiri yang diperluas terlebih dahulu Right Most Derivation (Terkanan) Simbol variable terletak disebelah kanan yang diperluas terlebih dahulu Eg : Aturan produksi S aas a A SbA ba Analisis Syntax (Parser) Input berupa token dari scanner memeriksa kebenaran sintaks dan menghasilkan serta memproses pohon sintaks Sintaks Bahasa pemrograman dinotasikan dengan Tata Bahasa bebas konteks ( Context Free Grammar) Parse membentuk pohon sintaks (Parse Tree), menggambarkan bagaimana memperoleh suatu string dengan cara menurunkan simbol-simbol variabel menjadi simbol-simbol terminal, sampai tidak ada simbol yang belum tergantikan. Metode Parsing Proses parsing akan melakukan pemerikasaan urutan kemunculan token yang memperhatikan : Rentang waktu ekseskusi Penanganan Kesalahan Penanganan Kode Kategori metode parsing: Top Down Bottom Up 1
2 Top Down Parsing Kelemahan Brute Force : Top Down memparsing pohon secara pre order Penelusuran dimulai dari root hingga ke leaf pohon sintaks (dari symbol awal hingga terminal) Backtracking : Brute Force No Backtracking : Recursive Descent Parser Mencoba semua aturan produksi sehingga akan menjadi lambat Sulit melakukan backtracking dan pemulihan kesalahan Memakan banyak memori karena perlu mencatat lokasi backtrack Tata Bahasa rekursif kiri tidak dapat ditelusuri, harus diubah dulu A A, dimana = ( V U T)* Bottom Up Parsing Menelusuri rightmost derivation secara terbalik menelusuri pohon dari daun menuju ke root. Biasanya mengurangi string/daun sampai pada akarnya Reduction Only, Shift reduce Parsing Latihan: 1. Buatlah pohon penurunan unutk memeriksa apakah string aaabbabbba dapat diproduksi dari aturan produksi berikut ini! S ab ba A a as baa B b bs abb 2. Gambarlah diagram transisis dari aturan produksi di atas! Brute Force Parsing Metode ini akan melakukan substitusi semua simbol non terminal yang ada. Jika terjadi salah parsing (atau tidak cocok), maka dapat dilakukan backtracking. Contoh : S => aad ab A => b c B => ccd ddc Contoh Kompilasi Misal ingin memparsing : accd S aad S abd : gagal, maka dilakukan backtrack S acd : gagal, maka dilakukan backtrack S ab S accd : berhasil! 2
3 Contoh mesin FSA Diagram Syntax statement Ekspresi ; ekspresi Term Ekspresi + Term Notasi BNF (Backus-Nour Form) Contoh FSA : Suatu tata bahasa memiliki himpunan simbol terminal/token berikut (ID, PLUS, MINUS, dan INT) token ID untuk karakter huruf a-z, 0-9, token INT untuk digit, token PLUS untuk Penjumlahan dan token MINUS untuk Pengurangan Aturan Produksi bisa dinyatakan dengan notasi BNF BNF menggunakan abstraksi untuk struktur syntax ::= sama identik dengan simbol sama dengan atau < > pengapit simbol non terminal { } Pengulangan dari 0 sampai n kali PLUS + S huruf ID Huruf, Digit Misalkan aturan produksi sbb: E T T+E T-E T a MINUS - Blank Digit INT Digit Notasi BNFnya adalah E ::= <T> <T> + <E> <T> - <E> T ::= a Diagram Syntax Alat bantu (tools) dalam pembuatan parser/ analisis sintaksis BNF: <Block> ::= BEGIN <statement> { SEMICOL <statement>} END Menggunakan simbol persegi panjang untuk non terminal Lingkaran untuk simbol terminal BEGIN Statement END Misalnya E T T+E T-E E T + - ; 3
4 Contoh Tata Bahasa Sederhana : Syntax Analyzer, Contoh : Terdapat statement : ( A + B ) * ( C + D ) Akan menghasilkan bentuk sintaksis: <factor>, <term> & <expression> Lexical Analysis - Contoh Contoh 1: ada urutan karakter yang disebut dengan statement fahrenheit := 32 + celcius * 1.8, Maka akan diterjemahkan kedalam token-token seperti dibawah ini identifier fahrenheit operator := integer 32 operator penjumlahan + Identifier celcius operator perkalian * real / float 1.8 Parsing: Brute force Memilih aturan produksi mulai dari kiri Meng-expand simbol non terminal sampai pada simbol terminal Bila terjadi kesalahan (string tidak sesuai) maka dilakukan backtrack Algoritma ini membuat pohon parsing secara top-down, yaitu dengan cara mencoba segala kemungkinan untuk setiap simbol non-terminal Contoh suatu language dengan aturan produksi sebagai berikut S aad ab A b c B ccd ddc Misal ingin dilakukan parsing untuk string accd Syntax Analyzer : Pohon Sintaks Parsing: Brute force (i) S (ii) S (iii) S Ekspresi Ekspresi Term a A d a A d b Terjadi kegagalan (iii), dilakukan back track (iv) S (v) S (vi) S Term Faktor Number Ekspresi a A d a B a B c c c d Terjadi kegagalan lagi (iv), dilakukan back-track 4
5 Parsing: Brute force Brute force : Aturan produksi Kelemahan dari metode-metode brute-force Mencoba untuk semua aturan produksi yang ada sehingga menjadi lambat (waktu eksekusi) Mengalami kesukaran untuk melakukan pembetulan kesalahan Memakan banyak memakan memori, dikarenakan membuat backup lokasi backtrack Grammar yang memiliki Rekursif Kiri tidak bisa diperiksa, sehingga harus diubah dulu sehingga tidak rekursif kiri, Karena rekursif kiri akan mengalami Loop yang terus-menerus Aturan Produksi yang rekursif memiliki ruas kanan (hasil produksi) yang memuat simbol variabel pada ruas kiri Sebuah produksi dalam bentuk A A contoh: S d S B ad B merupakan produksi rekursif kanan = berupa kumpulan simbol variabel dan terminal bentuk produksi yang rekursif kiri A A contoh: S S d B B ad merupakan produksi rekursif Kiri Brute force : Contoh Terdapat grammar/tata bahasa G = (V,T,P,S), dimana V= ( E, T, F ) Simbol NonTerminal (variable) T= ( i, *, /, +, - ) Simbol Terminal S= E Simbol Awal / Start simbol String yang diinginkanadalah i * i aturan produksi (P) yang dicobakan adalah 1. E T T + E T - E T F F * T F / T F i accept (diterima) Produksi yang rekursif kanan akan menyebabkan penurunan tumbuh kekanan, Sedangkan produksi yang rekursif kiri akan menyebabkan penurunan tumbuh ke kiri. Contoh: Context free Grammar dengan aturan produksi sebagai berikut: Brute force : Contoh 2. E T E+T E-T T F T* F T / F F i Dalam Banyak penerapan tata-bahasa, rekursif kiri tidak diinginkan, Untuk menghindari penurunan kiri yang looping, perlu dihilangkan sifat rekursif, dengan langkah-langkah sebagai berikut: accept (diterima) Meskipun ada rekursif kiri, tetapi tidak diletakkan sebagai aturan yang paling kiri 3. E E+T E-T T T T* F T / F F F i Rekursif kiri, program akan mengalami loop Pisahkan Aturan produksi yang rekursif kiri dan yang tidak; misalnya Aturan produksi yang rekursif kiri A A 1 A 2... A n Aturan produksi yang tidak rekursif kiri A n 5
6 Kalau pun tidak mungkin menghilangkan rekursif kiri dalam penyusunan aturan produksi maka produksi rekursif kiri diletakkan pada bagian belakang atau terkanan, hal ini untuk menghindari looping pada awal proses parsing lakukan per-ganti-an aturan produksi yang rekursif kiri, sebagai berikut: 1. A 1 Z 2 Z... n Z 2 Z n Metode ini jarang digunakan, karena semua kemungkinan harus ditelusuri, sehingga butuh waktu yang cukup lama serta memerlukan memori yang besar untuk penyimpanan stack (backup lokasi backtrack) 3 Z 1 Z 2 Z... n Z Metode ini digunakan untuk aturan produksi yang memiliki alternatif yang sedikit Pergantian dilakukan untuk setiap aturan produksi dengan simbol ruas kiri yang sama, bisa muncul variabel Z1, Z2 dst, sesuai dengan variabel yang menghasilkan rekurisif kiri dengan Recursive Descent Parser Parsing: Descent Parser Salah satu cara untuk meng-aplikasikan bahasa context free Contoh: Tata Bahasa Context free Simbol terminal maupun simbol variabelnya sudah bukan sebuah karakter S Sab asc dd ff Sbd Pisahkan aturan produksi yang rekursif kiri S Sab Sbd Ruas Kiri untuk S: 1=ab, 2=bd Aturan Produksi yang tidak rekursif kiri S asc dd ff dari situ didapat untuk Ruas Kiri untuk S: 1 = asc, 2 = dd, 3= ff Besaran leksikal sebagai simbol terminalnya, besaran syntax sebagai simbol variablenya /non terminalnya Dengan cara penurunan secara recursif untuk semua variabel dari awal sampai ketemu terminal Tidak pernah mengambil token secara mumdur (back tracking) Beda dengan turing yang selalu maju dan mundur dalam melakukan parsing Langkah berikutnya adalah penggantian yang rekursif kiri S Sab Sbd, dapat digantikan dengan Aturan Produksi memakai Recursif Descent : 1. S ascz1 ddz1 ffz1 2. Z1 ab bd 3. Z1 abz1 bdz1 Hasil akhir yang didapat setelah menghilangkan rekursif kiri adalah sebagai Berikut: S asc dd ff S ascz1 ddz1 ffz1 Z1 ab bd Z1 abz1 bdz1 Semua simbol variabel dijadikan prosedur/fungsi Jika ketemu simbol terminal pada aturan produksi, maka panggil prosedurnya Penelusuran bersifat top down mengikuti sintaks sesuai pola pada diagram sintaks Fungsi/prosedur ditulis untuk setiap non terminal dari suatu produksi. Setiap fungsi/prosedur akan melemparkan nilai benar atau salah bergantung pada apakah fungsi tersebut mengenali substring yang diterima sebagai ekspansi dari non terminal. 6
7 Contoh : Grammar dengan BNF : <program> ::= t_prog t_id t_semicol <block> t_dot <block> ::= t_begin <statement> {t_semicol <statement>} t_end <statement> ::= t_id t_ass <simple exp> t_if <exp> t_then <statement> t_if <exp> t_then <statement> t_else <statement> <exp> ::= <simple_exp> t_eq <simple exp> <simple_exp> t_lt <simple_exp> <simple_exp> t_gt <simple_exp> Dst. Penggalan program untuk grammar tsb 7
Parsing. A -> a as baa B -> b bs abb
Parsing Misalnya: S -> ab ba A -> a as baa B -> b bs abb Penurunan untuk string aaabbabba Dalam hal ini perlu untuk melakukan percobaan pemilihan aturan produksi yang bisa mendapatkan solusi Metode Parsing
Lebih terperinciParsing dapat dilakukan dengan cara : Penurunan terkiri (leftmost derivation) : simbol variable yang paling kiri diturunkan (tuntas) dahulu
Parsing atau Proses Penurunan Parsing dapat dilakukan dengan cara : Penurunan terkiri (leftmost derivation) : simbol variable yang paling kiri diturunkan (tuntas) dahulu Penurunan terkanan (rightmost derivation):
Lebih terperinciTeknik Kompiler 6. oleh: antonius rachmat c, s.kom
Teknik Kompiler 6 oleh: antonius rachmat c, s.kom Analisis Sintaks (Parser) Analisis Sintaks bergantung pada bahasa pemrograman masing-masing. Karena masing-masing bahasa pemrograman memiliki bentuk sintaks
Lebih terperinciHirarki Comsky. Unrestricted. Context Sensitive Context free Regular
Hirarki Comsky Unrestricted Context Sensitive Context free Regular Contoh Tata Bahasa Sederhana BEGIN END ;
Lebih terperinciAnalisis Sintaksis (syntactic analyzer atau parser)
Analisis Sintaksis (syntactic analyzer atau parser) pohon (tree) suatu graph terhubung yang tidak sirkuler, memiliki satu buah simpul (atau vertex / node) yaitu akar (root) dan dari akar ini memiliki lintasan
Lebih terperinciTEORI BAHASA & OTOMATA (KONSEP & NOTASI BAHASA) PERTEMUAN IX Y A N I S U G I Y A N I
TEORI BAHASA & OTOMATA (KONSEP & NOTASI BAHASA) PERTEMUAN IX Y A N I S U G I Y A N I Konsep dan Notasi bahasa Thn 56-59 Noam chomsky melakukan penggolongan tingkatan dalam bahasa, yaitu menjadi 4 class
Lebih terperinciTEKNIK KOMPILASI Konsep & Notasi Bahasa
TEKNIK KOMPILASI Konsep & Notasi Bahasa Sekolah Manajemen Informatika dan Komputer (STMIK) Palangkaraya 2012 Konsep dan Notasi bahasa Teknik Kompilasi merupakan kelanjutan dari konsepkonsep yang telah
Lebih terperinciALGORITMA PEMROGRAMAN 1C SINTAKS
ALGORITMA PEMROGRAMAN 1C SINTAKS Indah Wahyuni PENDAHULUAN Bahasa mesin adalah bentuk terendah komputer. Kita dapat berhubungan langsung dengan bagianbagian yang ada didalam komputer seperti bits, register.
Lebih terperinciKonsep dan Notasi Bahasa. Istiqomah, S.Kom
Konsep dan Notasi Bahasa Istiqomah, S.Kom Konsep dan Notasi Bahasa Hirarky Chomsky Diagram Keadaan Notasi BNF Diagram Sintaks (1) Hirarky Chomsky Tata Bahasa (grammar) bisa didefinisikan sebagai kumpulkan
Lebih terperinciAlat bantu (tools) dalam pembuatan parser/ analisis sintaksis. Menggunakan simbol persegi panjang untuk non terminal
Diagram Syntax Alat bantu (tools) dalam pembuatan parser/ analisis sintaksis Menggunakan simbol persegi panjang untuk non terminal Lingkaran untuk simbol terminal Misalnya E T T+E T-E E T + - BNF:
Lebih terperinciSINTAKS. Sintaks dari bahasa pemrograman di defenisikan dengan 2 kumpulan aturan, yaitu:
SINTAKS Bahasa mesin adalah bentuk terendah komputer. Kita dapat berhubungan langsung dengan bagian-bagian yang ada di dalam komputer seperti bits, register. Bahasa mesin terdiri dari bit-bit 0 dan 1.
Lebih terperinciSINTAKS. Sintaks dari bahasa pemrograman di defenisikan dengan 2 kumpulan aturan, yaitu:
SINTAKS Bahasa mesin adalah bentuk terendah komputer. Kita dapat berhubungan langsung dengan bagian-bagian yang ada di dalam komputer seperti bits, register. Bahasa mesin terdiri dari bit-bit 0 dan 1.
Lebih terperinciTEORI BAHASA DAN OTOMATA [TBO]
TEORI BAHASA DAN OTOMATA [TBO] Aturan Produksi Rekursif Kanan Aturan Produksi yang rekursif memiliki ruas kanan (hasil produksi) yang memuat simbol variabel pada ruas kiri. Terdapat rekursif kanan dan
Lebih terperinciBAB VI METODE PARSING
Bab VI Metode Parsing 35 BAB VI METODE PARSING TUJUAN PRAKTIKUM 1. Memahami Metode Parsing 2. Memahami Parsing Top - Down 3. Memahami Parsing Bottom - Up 4. Mengerti Tentang Operasi - Operasi yang dilakukan
Lebih terperinciTEORI BAHASA DAN OTOMATA [TBO]
TEORI BAHASA DAN OTOMATA [TBO] Tata Bahasa Bebas Konteks Bila pada tata bahasa regular terdapat pembatasan pada ruas kanan atau hasil produksinya, maka pada tata bahasa bebas konteks/ context free grammar,
Lebih terperinciTeori Komputasi 11/23/2016. Bab 6: Context-Free Grammar & Parsing. Context-Free Grammar. Context-Free Grammar
Teori Komputasi Bab 6: Context-Free Grammar & Parsing Agenda. Context-Free Grammar Fakultas Teknologi dan Desain Program Studi Teknik Informatika Contex-Free Grammar & Parsing 2 Context-Free Grammar Bentuk
Lebih terperinciBAB III CFG DAN PARSING
BAB 3 CFG DAN PARSING 32 BAB III CFG DAN PARSING TUJUAN PRAKTIKUM 1) Memahami dan mengerti CFG. 2) Memahami dan mengerti metode parsing. TEORI PENUNJANG 3.1. Pendahuluan Bentuk umum produksi CFG adalah
Lebih terperinciPOHON PENURUNAN Context Free Grammar
POHON PENURUNAN Context Free Grammar Bila pada tata bahasa regular terdapat pembatasan pada ruas kanan atau hasil produksinya, maka pada tata bahasa bebas konteks/ context free grammar, selanjutnya disebut
Lebih terperinciAplikasi Rekursif dalam Analisis Sintaks Program
Aplikasi Rekursif dalam Analisis Sintaks Program Albertus Kelvin / 13514100 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132,
Lebih terperinciKomponen sebuah Kompilator
Komponen sebuah Kompilator Program Subjek Program Objek ANALISIS SINTESIS Penganalisis Leksikal (Scanner) Penganalisis Sintaks (Parser) Penganalisis Semantik Pembentuk Kode Pengoptimal Kode TABEL 1 Scanning
Lebih terperinciTEORI BAHASA & OPERASI MATEMATIS (2)
PERTEMUAN III TEORI BAHASA & OPERASI MATEMATIS (2) Mahasiswa memahami bahasa sebagai himpunan dan operasi 2 -nya, cara mendefinisikan bahasa, serta cara mengenali anggota 2 bahasa JURUSAN TEKNIK INFORMATIKA
Lebih terperinciBAB IV ANALISA SINTAKS
BAB 4 ANALISA SINTAKS 41 BAB IV ANALISA SINTAKS TUJUAN PRAKTIKUM 1) Memahami dan mengerti tugas analisa sintaks. 2) Memahami dan mengerti predictive parsing. 3) Memahami dan mengerti parsing Table M. TEORI
Lebih terperinciTEORI BAHASA DAN AUTOMATA
MODUL XII TEORI BHS DN UTOMT Tujuan : Mahasiswa memahami tentang bentuk rekursif dari suatu CFG dan menurunkan suatu tata bahasa bebas konteks tanpa rekursif kiri Materi : o turan Produksi Rekursif o Tahapan
Lebih terperinciTata Bahasa Kelas Tata Bahasa. Konsep Bahasa (1)
Tata Bahasa Kelas Tata Bahasa Risnawaty 2350376 Jurusan Teknik Informatika Institut Teknologi Bandung Page 1 Konsep Bahasa (1) String(kata) adalah suatu deretan berhingga dari simbol-simbol. Panjang string
Lebih terperinciBAB II SINTAKS 2.1. SINTAKS
BAB II SINTAKS 2.1. SINTAKS merupakan kumpulan aturan yang mendefinisikan suatu bentuk bahasa. mendefinisikan bagaimana suatu kalimat dibentuk sebagai barisan/urutan dari pemilihan suatu kata dasar. Kata
Lebih terperinciTeknik Kompiler 5. oleh: antonius rachmat c, s.kom, m.cs
Teknik Kompiler 5 oleh: antonius rachmat c, s.kom, m.cs TATA BAHASA Tata bahasa / Grammar dalam OTOMATA adalah kumpulan dari himpunan variabel (non-terminal), simbol-simbol awal dan terminal yang dibatasi
Lebih terperinciTeknik Kompilasi. Notasi Bahasa
Teknik Kompilasi Notasi Bahasa TATA BAHASA Tata bahasa / Grammar dalam OTOMATA adalah kumpulan dari himpunan variabel (non-terminal), simbol-simbol awal dan terminal yang dibatasi oleh aturan-aturan produksi.
Lebih terperinciTEKNIK KOMPILASI Bahasa Regular
TEKNIK KOMPILASI Bahasa Regular Sekolah Manajemen Informatika dan Komputer (STMIK) Palangkaraya 2012 Tata bahasa reguler Sebuah bahasa dinyatakan regular jika terdapat Finite State Automata (FSA) yang
Lebih terperinciKesalahan Program Penanganan Kesalahan Reaksi Compiler Pada kesalahan Error Recovery Error repair
ERROR HANDLING Error Handling Kesalahan Program Penanganan Kesalahan Reaksi Compiler Pada kesalahan Error Recovery Error repair Kesalahan Program Kesalahan Program dapat berupa Kesalahan leksikal Kesalahan
Lebih terperinciKesalahan Program dapat berupa
Error Handling Program Penanganan Reaksi Compiler Pada kesalahan Error Recovery Error repair Program Program dapat berupa leksikal Sintaks Semantics 1 Error Handling - Program Program dapat berupa leksikal
Lebih terperinciSyntax, Semantic & Grammar. Konsep Bahasa Pemrograman Materi 3 Yudianto Sujana, M.Kom
Syntax, Semantic & Grammar Konsep Bahasa Pemrograman Materi 3 Yudianto Sujana, M.Kom Definisi Bahasa pemrograman merupakan notasi formal Mempunyai 2 komponen utama Syntax dan Semantic Syntax: Kumpulan
Lebih terperinciTEORI BAHASA DAN AUTOMATA
MODUL X TEORI BAHASA DAN AUTOMATA Tujuan : Mahasiswa memahami tentang tata bahasa bebas konteks dan membangun pohon penurunan tata bahasa bebas konteks Materi : Pohon Derivatif Tata Bahasa Bebas Konteks
Lebih terperinciUNIVERSITAS GUNADARMA
UNIVERSITAS GUNADARMA SK No. 92 / Dikti / Kep /1996 Fakultas Ilmu Komputer, Teknologi Industri, Ekonomi,Teknik Sipil & Perencanaan, Psikologi, Sastra Program Diploma (D3) Manajemen Informatika, Teknik
Lebih terperinciTEKNIK KOMPILASI Tony Darmanto,ST / Smt V S1 TI / STMIK WIDYA DHARMA/ Hal 16
Tony Darmanto,ST / Smt V S1 TI / STMIK WIDYA DHARMA/ Hal 16 4. ANALISIS LEKSIKAL Struktur Kompiler Analisis Leksikal Apa itu? Masukan bagi sebuah compiler/interpreter adalah program sumber yang strukturnya
Lebih terperinciBAB II DASAR TEORI. 2.1 Kompilator
BAB II DASAR TEORI Bab ini berisi penjelasan tentang beberapa teori dasar yang digunakan selama pelaksanaan Tugas Akhir. Pembahasan dilakukan terhadap kompilator, lexical analyzer, parser, code generator
Lebih terperinciTEKNIK KOMPILASI Tony Darmanto,ST / Smt V S1 TI / STMIK WIDYA DHARMA/ Hal 1
1. PENDAHULUAN TEKNIK KOMPILASI Tony Darmanto,ST / Smt V S1 TI / STMIK WIDYA DHARMA/ Hal 1 Arti Kata Teknik Kompilasi Teknik adalah suatu Metode atau Cara Kompilasi adalah suatu Proses mengabungkan serta
Lebih terperinciTujuan perancangan bhs program
Tujuan perancangan bhs program Komunikasi dengan manusia Pencegahan dan deteksi kesalahan Usability Efektifitas pemrograman Compilability (mengurangi kompleksitas,mis:penggunaan bracket) Efisiensi dengan
Lebih terperinciTeknik Kompilasi II TEKNIK KOMPILASI. Ernastuti & Sulistyo P 1/52. Ernastuti & Sulistyo
TEKNIK KOMPILASI P 1/52 MATERI Teknik Kompilasi II 2/52 Pendahuluan Tujuan Pembelajaran : 1. Mahasiswa memahami cara kerja serta proses yang terjadi pada sebuah Compiler 2. Mahasiswa memahami konsep pembuatan
Lebih terperinciBAB V CONTEXT FREE GRAMMAR DAN PUSH DOWN AUTOMATA
Bab V Context Free Grammar dan Push Down Automata 26 BAB V CONTEXT FREE GRAMMAR DAN PUSH DOWN AUTOMATA TUJUAN PRAKTIKUM 1. Memahami CFG dan PDA 2. Memahami Context Free Grammar 3. Memahami Push Down Automata
Lebih terperinciPemodelan CNF Parser dengan Memanfaatkan Pohon Biner
Pemodelan CNF Parser dengan Memanfaatkan Pohon Biner Jansen 13510611 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132, Indonesia
Lebih terperinciTeori Bahasa Formal dan Automata
Teori Bahasa Formal dan Automata Pertemuan 9 Semester Genap T.A. 2017/2018 Rahman Indra Kesuma, S.Kom., M.Cs. T. Informatika - ITERA POKOK BAHASAN Grammar Grammar secara Formal Context Free Grammar Terminologi
Lebih terperinciTata Bahasa Pemrograman
Tata Bahasa Pemrograman Bahasa dapat digambarkan sebagai suatu tatatanan yang membentuk hirarki Bahasa yang menggambarkan suatu urutan yang tertata secara valid disebut dengan formal languange Untuk membentuk
Lebih terperinciGrammar dan Tingkat Bahasa
CSG3D3 Teori Komputasi Grammar dan Tingkat Bahasa Agung Toto Wibowo Ahmad Suryan Yanti Rusmawati Mahmud Dwi Sulistiyo Kurniawan Nur Ramadhani Said Al Faraby Dede Rohidin KK Intelligence, Computing, and
Lebih terperincianggota alfabet dinamakan simbol terminal atau token.
GRAMMAR DAN BAHASA MATERI MINGGU KE-2 TATA BAHASA Dalam pembicaraan tata bahasa, anggota alfabet dinamakan simbol terminal atau token. Kalimat adalah deretan hingga simbo-lsimbol terminal. Bahasa adalah
Lebih terperinciPENYEDERHANAAN Context Free Grammar
PENYEDERHANAAN Context Free Grammar Bila pada tata bahasa regular terdapat pembatasan pada ruas kanan atau hasil produksinya, maka pada tata bahasa bebas konteks/ context free grammar, selanjutnya disebut
Lebih terperinciIMPLEMENTASI PENGGUNAAN SISTEM APLIKASI WEB PDF PARSER UNTUK MENAMPILKAN INFORMASI ISI DOKUMEN
IMPLEMENTASI PENGGUNAAN SISTEM APLIKASI WEB PDF PARSER UNTUK MENAMPILKAN INFORMASI ISI DOKUMEN Yulianto1), Fifit Alfiah2), Andy Nova Wijaya3), Muh. Rizal Ramadhan4), Leo Kumoro Sakti5), Mubtasir6), Abdul
Lebih terperinciBAB VI CARA PENANGANAN KESALAHAN
BAB 6 CARA PENANGANAN KESALAHAN 55 BAB VI CARA PENANGANAN KESALAHAN TUJUAN PRAKTIKUM 1. Mengetahui jenis - jenis kesalahan yang biasa terjadi 2. Memahami cara cara penanganan kesalahan 3. Mengerti bagaimana
Lebih terperinciTEKNIK KOMPILASI PERTEMUAN Ke 4 dan 5 Abdul Muis Mappalotteng ANALISIS SEMANTIK
TEKNIK KOMPILASI PERTEMUAN Ke 4 dan 5 Abdul Muis Mappalotteng ANALISIS SEMANTIK Analisis Semantik adalah proses setelah melewati proses scanning dan parsing. Pada tahap ini dilakukan pengecekan pada struktur
Lebih terperinciTeknik Kompilasi Dosen: Utami Dewi W.,S.Kom
Teknik Kompilasi Dosen: Utami Dewi W.,S.Kom Sebuah kompilator akan sering menemui program yang mengandung kesalahan. Oleh karena itu, kompilator harus memiliki strategi yang dapat dilakukan untuk menangani
Lebih terperinciBahasa adalah kumpulan kalimat. Kalimat adalah rangkaian kata. Kata adalah komponen terkecil kalimat yang tidak bisa dipisahkan lagi.
Konsep dan Notasi Bahasa Teori Bahasa Bahasa adalah kumpulan kalimat. Kalimat adalah rangkaian kata. Kata adalah komponen terkecil kalimat yang tidak bisa dipisahkan lagi. Contoh : Si Kucing kecil menendang
Lebih terperinciBab III Semantik. Konsep Semantik Bahasa Pemrograman (Semantik Analisis)
Bab III Semantik Konsep Semantik Bahasa Pemrograman (Semantik Analisis) Dari pembahasan bab-bab terdahulu maka kita ketahui bahwa proses ini merupakan proses kelanjutan dari proses kompilasi sebelumnya,
Lebih terperinciTEORI BAHASA DAN OTOMATA [TBO]
TEORI BAHASA DAN OTOMATA [TBO] Tata Bahasa Bebas Konteks Bila pada tata bahasa regular terdapat pembatasan pada ruas kanan atau hasil produksinya, maka pada tata bahasa bebas konteks/ context free grammar,
Lebih terperinciSATUAN ACARA PERKULIAHAN (SAP) Semester Penempatan
SATUAN ACARA PERKULIAHAN (SAP) Nama Mata Kuliah Kode Mata Kuliah Bobot Kredit Semester Penempatan Penanggung Jawab Mata Kuliah : Teori Bahasa Automata : TI 2A & TI 2B : 3 SKS : III : Fathiah, ST. M. Eng.
Lebih terperinciTEORI BAHASA DAN AUTOMATA
MODUL I TEORI BAHASA DAN AUTOMATA Tujuan : Mahasiswa memahami pengertian dan kedudukan Teori Bahasa dan Otomata (TBO) pada ilmu komputer Definisi dan Pengertian Teori Bahasa dan Otomata Teori bahasa dan
Lebih terperinciTEORI BAHASA DAN OTOMATA [TBO]
TEORI BAHASA DAN OTOMATA [TBO] Ekspresi Regular (1) Sebuah bahasa dinyatakan regular jika terdapat finite state automata yang dapat menerimanya. Bahasa-bahasa yang diterima oleh suatu finite state automata
Lebih terperinciPerjalanan sebuah intruksi
Perjalanan sebuah intruksi Source Program X = Y + X Analisis Leksikal Token-token Id1:=Id2+Id1 Id1 := Id2 + Id1 Analisis Sintaksis Code Generator dan Analisis sematiks LDA A ADD Y STO X
Lebih terperinci3.1. Definisi Syntax Syntax suatu bahasa pemrograman adalah satu himpunan
BAB 3. ANALISIS SINTAK PERAN PENGURAI CONTEXT-FREE GRAMMAR PENULISAN GRAMMAR PENGURAIAN TOP-DOWN PENGURAIAN BOTTOM-UP PENGURAIAN OPERATOR-PRECEDENCE PENGURAIAN LR PENGGUNAAN AMBIGUOUS GRAMMAR PEMBENTUK
Lebih terperinciProses Kompilasi. Otomata dan Pengantar Kompulasi Pertemuan 3
Proses Kompilasi Otomata dan Pengantar Kompulasi Pertemuan 3 Bahasa Pemrograman Bahasa pemrograman adalah bahasa yang menjadi sarana manusia untuk berkomunikasi dengan komputer. Pikiran manusia yang tidak
Lebih terperinciPENGEMBANGAN PROTOTIPE APLIKASI KONVERSI KODE DARI BAHASA C KE PASCAL
PENGEMBANGAN PROTOTIPE APLIKASI KONVERSI KODE DARI BAHASA C KE PASCAL LAPORAN TUGAS AKHIR Disusun Sebagai Syarat Kelulusan Tingkat Sarjana oleh : Ipam Fuaddina Adam / 13502079 PROGRAM STUDI TEKNIK INFORMATIKA
Lebih terperinciANALISIS DAN PERANCANGAN PERANGKAT LUNAK
BAB IV ANALISIS DAN PERANCANGAN PERANGKAT LUNAK Bab ini membahas analisis perancangan perangkat lunak (diberi nama c2p) dari segi struktur data dan analisis aliran data. Hal-hal yang dibahas diantaranya
Lebih terperinciPENGANTAR OTOMATA DAN KOMPILASI
PERTEMUAN I PENGANTAR OTOMATA DAN KOMPILASI Mahasiswa mengetahui tujuan mata kuliah, alur perkuliahan selama 1 semester, referensi yang digunakan, bentuk & bobot evaluasi JURUSAN TEKNIK INFORMATIKA FAKULTAS
Lebih terperinciTEKNIK KOMPILASI. Dosen : Dwi Retno Wahyuningsih, S. Kom. Jurusan : Teknik Informatika Semester Genap 2007/2008
TEKNIK KOMPILASI Dosen : Dwi Retno Wahyuningsih, S. Kom Jurusan : Semester Genap 2007/2008 SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER (STMIK) DARMAJAYA BANDAR LAMPUNG 2008 GARIS-GARIS BESAR PROGRAM
Lebih terperinciTEKNIK KOMPILASI. Firrar Utdirartatmo
TEKNIK KOMPILASI TEKNIK KOMPILASI Firrar Utdirartatmo Kata Pengantar Penulis memberanikan diri untuk menyusun buku ini karena melihat kenyataan bahwa teknik kompilasi merupakan mata kuliah yang diajarkan
Lebih terperinciTATA BAHASA BEBAS KONTEKS (CONTEXT FREE GRAMMAR)
TATA BAHASA BEBAS KONTEKS (CONTEXT FREE GRAMMAR) Oleh: Bagus Adhi Kusuma Teori Bahasa dan Otomata STIMIK AMIKOM Purwokerto Program Studi Teknik Informatika 2013/2014 CFG (Bahasa Bebas Konteks) sebuah tata
Lebih terperinciSebuah bahasa dinyatakan regular jika terdapat finite state automata yang dapat menerimanya. Bahasa-bahasa yang diterima oleh suatu finite state
EKSPRESI REGULAR Sebuah bahasa dinyatakan regular jika terdapat finite state automata yang dapat menerimanya. Bahasa-bahasa yang diterima oleh suatu finite state automata bisa dinyatakan secara sederhana
Lebih terperinciSEMANTIK. Int vector[10];
SEMANTIK Sintaks mendefinisikan suatu bentuk program yang benar dari suatu bahasa. Semantik mendefinisikan arti dari program yang benar secara sintaks dari bahasan tersebut. Sebagai contoh adalah deklarasi
Lebih terperinciSEMANTIK. Sintak mendifinisikan suatu bentuk program yang benar dari suatu bahasa.
SEMANTIK Sintak mendifinisikan suatu bentuk program yang benar dari suatu bahasa. Semantic mendefinisikan arti dari program yang benar secara sintak dari bahasa tersebut. Semantic suatu bahasa membutuhkan
Lebih terperinciPohon (Tree) Contoh :
POHON (TREE) Pohon (Tree) didefinisikan sebagai graph terhubung yang tidak mengandung sirkuit. Sedangkan Hutan (Forest) adalah graph yang tidak mengandung sirkuit. Jadi pohon adalah hutan yang terhubung.
Lebih terperinciPenghilangan Rekursif Kiri
Penghilangan Rekursif Kiri Aturan Produksi yang rekursif memiliki ruas kanan (hasil produksi) yang memuat simbol variabel. Aturan Produksi Rekursif Kanan Sebuah aturan produksi dalam bentuk: A A A : Variabel
Lebih terperinciSATUAN ACARA PERKULIAHAN MATA KULIAH : TEORI BAHASA DAN AUTOMATA (TBA) KODE / SKS : KK / 3 SKS
SATUAN ACARA PERKULIAHAN MATA KULIAH : TEORI BAHASA DAN AUTOMATA (TBA) KODE / SKS : KK-045325 / 3 SKS Mingu Pokok Bahasan 1. 1. Pendahuluan menjelaskan konsep dasar bahasa dan teori tentang string 1.1.
Lebih terperinciSATUAN ACARA PERKULIAHAN (SAP) MATA KULIAH PENGANTAR TEKNIK KOMPILASI
SATUAN ACARA PERKULIAHAN (SAP) MATA KULIAH PENGANTAR TEKNIK KOMPILASI Perte 1. 1. Pendahuluan TIU : Mhs mengetahui apa yang akan dipelajari dan apa yang dituntut darinya serta memahami gambaran umum Teknik
Lebih terperinciSATUAN ACARA PERKULIAHAN STMIK UBUDIYAH INDONESIA SEMESTER GENAP TAHUN AKADEMIK 2013/2014
SATUAN ACARA PERKULIAHAN STMIK UBUDIYAH INDONESIA SEMESTER GENAP TAHUN AKADEMIK 2013/2014 MATA KULIAH FAKULTAS JURUSAN / JENJANG : TEKNIK KOMPILASI : Fakultas Ilmu Komputer : Teknik Informatika PROSES
Lebih terperinciGARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)
Mata Kuliah : Teori Bahasa dan Automa Bobot Mata Kuliah : 3 Sks GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP) Deskripsi Mata Kuliah : Micro processing dan Memory, Memory Addressing; Register, Struktur Program,
Lebih terperinciTeori Bahasa dan Otomata 1
Teori Bahasa dan Otomata 1 KATA PENGANTAR Teori Bahasa dam Otomata merupakan matakuliah wajib yang harus diambil oleh seluruh mahasiswa jurusan Teknik Indonesia di lingkungan Sekolah Tinggi Teknologi Indonesia.
Lebih terperinciTeori Bahasa & Otomata
Teori Bahasa & Otomata Pendilkom/Ilkom Universitas Pendidikan Indonesia 1 Daftar Isi Bab 1 Pendahuluan Bab 2 Matematika Dasar Bab 3 Dasar-Dasar Teori Bahasa Bab 4 Representasi Bahasa Bab 5 Klasifikasi
Lebih terperinciSEMANTIK Syntax mendefinisikan suatu bentuk program yang benar dari suatu bahasa.
SEMANTIK Syntax mendefinisikan suatu bentuk program yang benar dari suatu bahasa. Semantik mendefinisikan arti dari program yang benar secara syntax dari bahasa tersebut. Semantik suatu bahasa membutuhkan
Lebih terperinciPERANCANGAN SISTEM PERBAIKAN ERROR KODE SUMBER PROGRAM OTOMATIS
PERANCANGAN SISTEM PERBAIKAN ERROR KODE SUMBER PROGRAM OTOMATIS Bondan Himawan, Indrato, Taufiq Hidayat, Yudi Prayudi Jurusan Teknik Informatika, Fakultas Teknologi Industri, Universitas Islam Indonesia
Lebih terperinciSATUAN ACARA PERKULIAHAN (SAP) Semester Penempatan
SATUAN ACARA PERKULIAHAN (SAP) Nama Mata Kuliah Kode Mata Kuliah Bobot Kredit Semester Penempatan Penanggung Jawab Mata Kuliah : Teknik kompilasi : Non-Reguler : 3 SKS : I : Fathiah, ST. M. Eng. Pertemua
Lebih terperinciTEKNIK KOMPILASI. Dosen : Dwi Retno Wahyuningsih, S. Kom. Jurusan : Teknik Informatika Semester Genap 2007/2008
TEKNIK KOMPILASI Dosen : Dwi Retno Wahyuningsih, S. Kom Jurusan : Teknik Informatika Semester Genap 2007/2008 SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER (STMIK) DARMAJAYA BANDAR LAMPUNG 2008 SATUAN
Lebih terperincidisebut ternary operator. Di dalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operatoroperator
OPERATOR Operator digunakan untuk menyatakan suatu perhitungan/operasi. Operator yang digunakan untuk operasi yang melibatkan satu operand disebut unary operator. Jika melibatkan dua operand maka disebut
Lebih terperinciAplikasi Pengolah Bahasa Alami Untuk Operasi Boolean Antar Citra Agus Purwo Handoko 5)
ISSN : 1693 1173 Aplikasi Pengolah Bahasa Alami Untuk Operasi Boolean Antar Citra Agus Purwo Handoko 5) Abstrak Bahasa alami yang diproses untuk operasi Boolean merupakan bahasa Indonesia sehari-hari yang
Lebih terperinciDIKTAT TEORI BAHASA DAN OTOMATA
DIKTAT TEORI BAHASA DAN OTOMATA DISUSUN OLEH Ir. Sudiadi, M.M.A.E. Ir. Rizani Teguh, M.T. Sekolah Tinggi Manajemen Informatika dan Komputer Global Informatika MDP 207 Hal KATA PENGANTAR Pertama-tama kami
Lebih terperinciBAB III ANALISIS DAN PERANCANGAN
BAB III ANALISIS DAN PERANCANGAN 3.1 Analisis Sistem Dalam analisis sistem dilakukan penguraian dari suatu sistem yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk mengidentifikasikan dan
Lebih terperinciOutline. IKI 40931: Topik Khusus: NLP Kuliah 7: Parsing CFG. Parsing. Contoh parsing. Ruli Manurung. 10 Maret (Bab Jurafsky & Martin)
Outline IKI 40931: Topik Khusus: NLP Kuliah 7: Parsing CFG (Bab 10.1-10.4 Jurafsky & Martin) Ruli Manurung Fakultas Ilmu Komputer Universitas Indonesia 10 Maret 2008 1 2 3 4 Parsing Contoh parsing CFG
Lebih terperinciBAB II TINJAUAN PUSTAKA. Bahasa menurut kamus Websters adalah the body of words and methods of
BAB II TINJAUAN PUSTAKA 2.1 Bahasa Alami dan Bahasa Formal Bahasa menurut kamus Websters adalah the body of words and methods of combining words used and understood by a considerable community, sedangkan
Lebih terperinciSATUAN ACARA PERKULIAHAN (SAP)
SATUAN ACARA PERKULIAHAN (SAP) Pertemuan / Minggu Nama Mata Kuliah : Teori Bahasa dan Automata Kode Mata Kuliah : TI 04 Bobot Kredit : 3 SKS Semester Penempatan : III Kedudukan Mata Kuliah : Mata Kuliah
Lebih terperinciPSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR
1 PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR Siti Mukaromah, S.Kom TEKNIK PENYAJIAN ALGORITMA Teknik Tulisan Structure English Pseudocode Teknik Gambar Structure Chart HIPO Flowchart 2 PSEUDOCODE Kode
Lebih terperinciTeknik Kompiler 7. oleh: antonius rachmat c, s.kom
Teknik Kompiler 7 oleh: antonius rachmat c, s.kom Transformasi TBBK Dimaksudkan untuk memperoleh TBBK yang memenuhi kriteria-kriteria tertentu yang lebih efisien. Transformasi boleh dilakukan asalkan tidak
Lebih terperinciBab 2. Dasar-Dasar Pemrograman C
Bab 2. Dasar-Dasar Pemrograman C Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 Overview Tipe Data Standar (Standart Data Type) Aturan Pendefinisian Identifier Variabel Mendeklarasikan
Lebih terperinciTeori Komputasi 10/15/2015. Bab 1: Pendahuluan. Teori Komputasi dan Teknik Kompilasi. Teori Komputasi dan Teknik Kompilasi
Teori Komputasi Agenda Teori Komputasi dan Teknik Kompilasi Translator Pembuatan Compiler Mutu Compiler Bab 1: Pendahuluan Fakultas Teknologi dan Desain Program Studi Teknik 1-1 Informatika Teori Komputasi
Lebih terperinciBAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah
BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Bahasa alami adalah bahasa yang biasa digunakan untuk berkomunikasi antarmanusia, misalnya bahasa Indonesia, Sunda, Jawa, Inggris, Jepang, dan sebagainya. Bahasa
Lebih terperinciBAB II ANALISA LEKSIKAL (SCANNER)
BAB 2 PENGENALAN TEKNIK KOMPILASI 22 BAB II ANALISA LEKSIKAL (SCANNER) TUJUAN PRAKTIKUM 1) Memahami bahasa sumber. 2) Memahami dan mengerti tugas analisa leksikal. 3) Memahami dan mengerti membangun alisa
Lebih terperinciPemrograman Algoritma Dan Struktur Data
MODUL PERKULIAHAN Modul ke: 14Fakultas Agus FASILKOM Pemrograman Algoritma Dan Struktur Data ADT BINARY TREE Hamdi.S.Kom,MMSI Program Studi Teknik Informatika ISTILAH-ISTILAH DASAR Pohon atau Tree adalah
Lebih terperinciIF-UTAMA 1. Penurunan (Derivation) [2] Penurunan (Derivation) Contoh Penurunan [1] Parse Tree [1]
Penurunan (Derivation) [2] Penurunan (Derivation) Pertemuan : 5 Dosen Pembina : Danang Junaedi IF-UTM 1 Berfungsi untuk menggambarkan atau mengetahui bagaimana memperoleh suatu string dari dari suatu tata
Lebih terperinciMODEL KOMPILATOR FUNGSI UMUM BAGIAN KOMPILATOR. Dosen Pengampu: Utami Dewi Widianti,S.Kom
MODEL KOMPILATOR FUNGSI UMUM BAGIAN KOMPILATOR Dosen Pengampu: Utami Dewi Widianti,S.Kom (1) Program Sumber Deretan simbol berupa huruf, digit, atau simbol tertentu seperti +, -, dan, Program sumber memuat
Lebih terperinciUNIVERSITAS BINA NUSANTARA. Program Ganda Teknik Informatika Matematika Skripsi Sarjana Program Ganda Semester Genap 2003/2004
UNIVERSITAS BINA NUSANTARA Program Ganda Teknik Informatika Matematika Skripsi Sarjana Program Ganda Semester Genap 2003/2004 PERANCANGAN BAHASA PEMROGRAMAN BERORIENTASI OBJEK DOGI Ari Prasetyo NIM: 0992980032
Lebih terperinciRENCANA PEMBELAJARAN SEMESTER (Kelas Teori)
UPN "VETERAN" YOGYAKARTA FAKULTAS TEKNIK INDUSTRI RENCANA PEMBELAJARAN SEMESTER (Kelas Teori) Fakultas : Teknik Industri Jurusan : Teknik Informatika Mata Kulia & Kode : Otomata dan Pengantar Kompilasi
Lebih terperinciALGORITMA PEMROGRAMAN 1C SEMANTIKS
ALGORITMA PEMROGRAMAN 1C SEMANTIKS Indah Wahyuni PENDAHULUAN Parser tidak mengetahui symbol-simbol. Untuk mengenali makna dari simbolsimbol tersebut maka compiler memanggil routin semantics. Membutuhkan
Lebih terperinciFase-fase proses sebuah kompilasi
Fase-fase proses sebuah kompilasi Penganalisa Leksikal membaca program sumber, karakter demi karakter. Sederetan (satu atau lebih) karakter dikelompokkan menjadi satu kesatuan mengacu kepada pola kesatuan
Lebih terperinciPERTEMUAN 2 ALGORITMA & PEMROGRAMAN
PERTEMUAN 2 ALGORITMA & PEMROGRAMAN POKOK BAHASAN 1. Pendahuluan 2. Tahapan Pembangunan Program 3. Pengenalan Algoritma 4. Cara Menyajikan Algoritma 5. Data Program 6. Elemen-Elemen Program PENDAHULUAN
Lebih terperinci