BAB 2. ANALISIS LEKSIKAL

Ukuran: px
Mulai penontonan dengan halaman:

Download "BAB 2. ANALISIS LEKSIKAL"

Transkripsi

1 ANALISIS LEKSIKAL 2.1 BAB 2. ANALISIS LEKSIKAL PERAN PENGANALISIS LEKSIKAL INPUT BUFFERING SPESIFIKASI TOKEN PENGENALAN TOKEN SATU BAHASA UNTUK PENENTUAN (SPECIFYING) PENGANALISIS LEKSIKAL FINITE AUTOMATA DARI EKSPRESI REGULAR KE NFA RANCANGAN PEMBENTUK PENGANALISIS LEKSIKAL PENGOPTIMASIAN POLA BERDASARKAN-DFA 2.2 1

2 PERAN PENGANALISIS LEKSIKAL source program Lexical Analyzer token get next token Parser parse tree Symbol Table 2.3 SOURCE TEXT LEXER PARSER Characters Tokens 2.4 2

3 PERAN PENGANALISIS LEKSIKAL PERAN PENGANALISIS LEKSIKAL ADALAH: Membaca karakter input & menghasilkan token Menghilangkan komentar dan ruang kosong Menghubungkan antara pesan kesalahan yang diperoleh kompilator dengan program sumber Mengenali identifier dan keyword Identifier = variables, arrays, function, etc., token Keyword = fixed characters: begin, end, if, etc. 2.5 ALASAN PEMISAHAN PHASE ANALISIS Phase Analysis dipisah menjadi dua, yaitu: Lexical Analyzer dan Syntax Analyzer dengan alasan: Penyederhanaan rancangan Efisiensi kompilator lebih baik Portabilitas kompilator meningkat 2.6 3

4 TOKEN, LEXEME dan PATTERN Lexeme Pattern Token Suatu rangkaian karakter kt pada program sumber yang cocok atau sesuai dengan pola (pattern) untuk membentuk satu token. Peraturan yang menjelaskan set lexeme yang dapat merepresentasikan satu token tertentu dalam program sumber. Satu set string input Merupakan rangkaian karakter kt yang dalam satu kesatuan memiliki arti tersendiri, dapat berupa: kata kunci (key word), operator, identifier constant, rangkaian huruf (literal string); yang dijelaskan oleh satu peraturan. Harus cocok (match) dengan setiap string yang ada dalam set tersebut. simbol baca (function symbol) misalnya: tanda kurung, koma, titik koma, dan sebagainya. 2.7 TOKEN, LEXEME dan PATTERN TOKEN SAMPLE LEXEMES INFORMAL DESCRIPTION OF PATTERN const const const if if if relation <, <=, =, <>, >, >= < or <= or = or <> or > or = id pi, count, D2 letter followed by letters and digits num , 0, 6.02E23 any numeric constant literal "core dumped" any character between " and " except " 2.8 4

5 ATTRIBUTE UNTUK TOKEN Bila terdapat lebih dari satu pattern yang sesuai dengan satu lexeme, lexical analyzer harus melengkapi informasi tambahan tentang lexeme mana yang dimaksud atau yang sesuai dengan phase berikutnya dari kompiltor. Token biasanya hanya mempunyai satu atribut yaitu POINTER yang disimpan dalam tabel simbol. 2.9 ATTRIBUTE UTK TOKEN CONTOH: Pattern num cocok untuk string 0 dan 1, sedangkan code generator harus tahu string mana yang dimaksud, misalnya <num,1> E = M *C**2 akan ditulis berpasangan sbb: <id, pointer ke entri tabel simbol utk E> <assign_op,> <id, pointer ke entri tabel simbol utk M> <mult_op,> <id, pointer ke entri tabel simbol utk C> <exp_op,> <num, integer value 2>

6 KESALAHAN LEKSIKAL Hanya sedikit kesalahan leksikal (lexical errors) yang dapat dilihat di phase lexical analyzer karena phase ini mempunyai pandangan yang sempit pada program sumber Misal; fi(a = = f(x)) dalam bahasa C, maka lexical analyzer tidak dapat menjelaskan apa fi tersebut betul sebagai identifier atau salah eja yang seharusnya adalah if 2.11 KESALAHAN LEKSIKAL (Cont d) KEMUNGKINAN PEMULIHAN KESALAHAN Menghapus karakter yang berlebihan Memasukkan karakter yang diduga hilang Menganti karakter yang diduga salah dengan yang benar Menukar letak dari dua karakter yang berdekatan

7 INPUT BUFFERING Tiga pendekatan umum untuk mengimplementasikan suatu Penganalysis Leksikal (Lexical Analyzer). 1. Gunakan pembentuk lexical-analyzer analyzer seperti kompilator Lex untuk menghasilkan penganalisis leksikal dari satu spesifikasi berdasarkan ekspresi reguler. 2. Menulis lexical analyzer dengan satu sistem bahasa pemrograman konvensional, menggunakan fasilitas I/O untuk membaca input. 3. Menulis lexical analyzer dengan bahasa assembly dan secara ekplisit mengatur pembacaan input INPUT BUFFERING (Cont d) BUFFER PAIRS Satu buffer dibagi menjadi dua bagian Jumlah karakter tiap bagian = 1024 (2 10 ) atau 4096 (4 X 2 10 ) yang merupakan N N karakter tersebut dibaca sekaligus untuk ditempatkan di tiap setengah buffer-nya

8 SENTINEL INPUT BUFFERING (Cont d) The sentinel is a special character that cannot be part of the source program, and a natural choice is eof SPESIFIKASI TOKEN STRINGS & LANGUAGE: String adalah satu rangkaian simbol dari alphabet (finite sequence of symbols). Kalimat dan kata sering disebut string Panjang string: S S ; Contoh: banana: S =6, String kosong =, sehingga S =0, Language adalah setiap set dari string pada suatu alphabet yang tetap (set of strings)

9 OPERASI PADA BAHASA Terdapat beberapa operasi penting yang dapat diterapkan pada bahasa (languages). Khusus untuk lexical analysis: union, concatenation (rangkaian), closure (pengakhiran/penutupan), exponentiation operator. Misal; L sebagai himpunan {A,B, Z,a,b, z} dan D sebagai himpunan {0,1,2, 9} 1. L D = himpunan huruf dan angka. 2. LD = himpunan string terdiri dari satu huruf diikuti oleh satu angka. 3. L 4 = himpunan string 4 huruf. 4. L* = himpunan string huruf-huruf termasuk string. 5. L(L D)* = himpunan semua string huruf dan angka yang dimulai dengan huruf. 6. D + = himpunan semua string angka (satu atau lebih) OPERASI PADA BAHASA (Cont d) OPERASI DEFINISI Union (gabungan) L dan M L M = {s s di L atau M} ditulis L M Sambungan L dan M ditulis LM Penutup Kleene L ditulis L* Penutup Positif L ditulis L + LM = {st s di L dan t di M} L* = L i L* = penyambungan i=0 nol atau lebih L L + = L i L + = penyambungan i=1 satu atau lebih L

10 EKSPRESI BERATURAN Identifier = satu set string dari huruf-huruf dan angka-angka yang dimulai dengan huruf atau satu huruf diikuti 0 atau huruf-huruf atau angka (digit). Suatu ekspresi beraturan (regular expression = RE) dibentuk berdasarkan ekspresi beraturan lain yang lebih sederhana. Contoh notasi RE: letter(letter digit)*. Garis tegak berarti atau, tanda kurung digunakan untuk mengelompokkan ekspresi bagian, dan tanda * artinya adalah nol atau lebih kali dari ekspresi yang diberi kurung. Satu bahasa yang ditunjukkan oleh satu ekspresi beraturan disebut REGULAR SET EKSPRESI BERATURAN (Cont d) Regular definitions adalah satu urutan dari bentuk : d 1 r 1 d 2 r 2... d n d = nama r n r = regular expression

11 EKSPRESI BERATURAN (Cont d) Non-Regular Sets (himpunan tidak beraturan). Ada bahasa yang tidak dapat dijelaskan dengan regular expression. Ekspresi beraturan tidak dapat digunakan untuk menyatakan bentuk yang seimbang atau terulang. Misalnya himpunan dari semua rangkaian tanda kurung yang seimbang tidak dapat dinyatakan oleh suatu ekspresi beraturan, tetapi dapat dinyatakan dalam suatu tata bahasa bebas konteks (Context Free Grammar (CFG)). Rangkaian yang berulang tidak dapat dinyatakan oleh ekspresi beraturan. Contoh: {wcw w adalah rangkaian dari a dan b} tidak dapat dinyatakan sebagai suatu ekspresi beraturan, dan juga tidak dapat dinyatakan dengan tata bahasa bebas konteks CONTOH: EKSPRESI BERATURAN (Cont d) Misal: = {a,b} RE: a b; yaitu himpunan {a,b} RE: (a b) (a b); yaitu himpunan {aa,ab,ba,bb} atau untuk RE: aa ab ba bb RE: a*; yaitu himpunan string ε atau beberapa a, yaitu himpunan {ε, a, aa, aaa, } RE: (a b)*; yaitu himpunan semua string yang terdiri dari ε atau a atau b. Sama dengan RE: (a*b*)* RE: a a*b; yaitu himpunan a atau {ε, a, aa, aaa, } diikuti oleh b. a*

12 PENGENALAN TOKEN Misal: penggalan tata bahasa sebagai berikut: stmt if exp then stmt if exp then stmt else stmt exp term relop term term term id num 2.23 PENGENALAN TOKEN (Cont d) Terminal-terminal tersebut diatas yaitu: if, then, else, relop, id dan num membentuk himpunan rangkaian (string) yang diberikan oleh definisi beraturan sebagai berikut: if if then then else else relop < <= = <> > >= id letter(letter digit)* num digit + (.digit + )?(E(+ -)?digit + )? Lexical analyzer akan mengenali keywords if, then, else serta lexeme yang dinyatakan oleh relop, id dan num. Keywords adalah kata-kata reserved yang tidak dapat digunakan sebagai identifier (id)

13 MENGHILANGKAN WHITE SPACE Lexical analyzer akan menghilangkan white space (i.e., blanks, tabs, new lines) dengan menggunakan regular definition sebagai berikut: delim blank newline tab ws delim Sehingga apabila menemukan pola yang cocok dengan ws, maka lexical analyzer tidak akan memberikan token kepada parser tetapi akan melanjutkan mencari character lain setelah white space tersebut TRANSITION DIAGRAM (TD) Sebagai langkah antara di dalam membentuk lexical analyzer, dibuatlah satu transition diagram. TD atau diagram peralihan adalah stylized flowchart (bagan alir) yang dibentuk sebagai langkah antara dalam pembentukan token pada lexical analyzer. TD tersebut menggambarkan aksi yang dilakukan bila Lexical Analyzer dipanggil oleh pengurai utk memperoleh token berikutnya (get next token)

14 TRANSITION DIAGRAM (Cont d) Catatan: : state : edge (sisi) : accepting state : pointer tanda dapat mundur * 2.27 TRANSITION DIAGRAM (TD) Contoh: TD utk pattern > atau >= Pembacaan dimulai dari state 0, membaca karakter berikutnya yaitu > utk menuju ke state 6. Bila yg dibaca benar > maka lanjut, bila bukan maka akan gagal mengenali pattern > atau >=. Dari state 6 karakter yg akan dibaca adalah = utk menuju ke state 7. Bila yg dibaca benar = maka berhasil mengenali pola >= bila bukan = maka akan menuju ke state

15 A LANGUAGE for SPECIFYING LEXICAL ANALYZERS (1) Ada piranti (tool) khusus yang lazim digunakan utk menentukan lexical analyzers yaitu Lex Compiler dengan inputnya Lex Language. Penggunaannya sebagai berikut: Lihat Fig a.out adalah object program yg merupakan lexical analyzer yang dapat merobah rangkaian input menjadi token Lex specifications. Program lex terdiri dari 3 bagian : 1. Deklarasi (Declarations) 2. Aturan Translasi (Translation Rules) 3. Prosedur Tambahan (Auxiliary Procedures) 2.29 A LANGUAGE for SPECIFYING LEXICAL ANALYZERS (2)

16 A LANGUAGE for SPECIFYING LEXICAL ANALYZERS (3) %{ %} /* definitions of manifest constants LT, LE, EQ, NE, GT, GE, IF, THEN, ELSE, ID, NUMBER, RELOP */ /* regular definitions */ delim [ \t\n] ws {delim}+ letter [A-Za-z] digit [0-9] id {letter}({letter} {digit})* number {digit}+(\.{digit}+)?(e[+\-]?{digit}+)? %% 2.31 A LANGUAGE for SPECIFYING LEXICAL ANALYZERS (4) {ws} {/* no action and no return */} if {return(if);} then {return(then);} else {return(else);} {id} {yylval = install_id(); return(id);} {number} {yylval = instali_num(); return(number);} "<" {yylval = LT; return(relop);} "<=" {yylval = LE; return(relop);} "=" {yylval = EQ; return(relop);} "<>" {yylval = NE; return(relop);} ">" {yylval = GT; return(relop);} ">=" {yylval = GE; return(relop);} %%

17 A LANGUAGE for SPECIFYING LEXICAL ANALYZERS (5) install_id() { /* procedure to install the lexeme, whose first character is pointed to by yytext and whose length is yyleng, into the symbol table and return a pointer thereto */ } install_num() { /* similar procedure to install a lexeme that is a number */ } Fig Lex program for the tokens of Fig A LANGUAGE for SPECIFYING LEXICAL ANALYZERS (6)

18 FINITE AUTOMATA (1) Recognizer suatu bahasa; program yang mengambil string x sebagai input dan menjawab yes bila x adalah kalimat dari bahasa tersebut, dan menjawab no bila sebaliknya. Regular expression di compile menjadi recognizer dengan membentuk diagram peralihan disebut finite automata (otomata berhingga). Finite Automata; dua macam : 1. DETERMINISTIC Finite Automata (DFA) 2. Non-DETERMINISTIC Finite Automata (NFA) 2.35 FINITE AUTOMATA (2) Persamaan DFA & NFA Dapat mengenali pola ekspresi beraturan dengan tepat. Perbedaan DFA Menghasilkan pengenal lebih cepat. Ukuran DFA lebih besar untuk hal yg sama. NFA Menghasilkan pengenal lebih lambat. Ukuran NFA lebih kecil untuk hal yang sama

19 NON-DETERMINISTIC FINITE AUTOMATA (NFA) NFA= model matematika yg terdiri dari: 1. Satu set state S. 2. St Satu set symbol blinput tσ Σ (lhbt (alphabet simbol blinput). 3. Fungsi transisi move yang memetakan pasangan state-simbol ke dalam himpunan state. 4. Satu state S 0 yg dinyatakan sebagai state awal (start/initial state). 5. Satu set state F yg dinyatakan sebagai state penerima/ akhir (accepting/final l state). t ) NFA dapat direpresentasikan dalam bentuk bagan sebagai suatu grafik yang berlabel disebut Transition Graph, dengan node sebagai state dan sisi berlabel menyatakan fungsi transisi NON-DETERMINISTIC FINITE AUTOMATA (Cont d) Transition graph untuk mengenali bahasa (a b)*abb Catatan: set state = {0,1,2,3} state awal = state 0 set simbol input = {a,b} state penerima = state

20 NON-DETERMINISTIC FINITE AUTOMATA (Cont d) NFA Memungkinkan terjadi lebih dari satu transisi (simbol) yang keluar dari satu state untuk input yang sama Dapat dijelaskan dengan Graph Representation yang implementasinya dengan menggunakan Tabel Peralihan (Transition table). Row = State Column = input symbol (boleh ) Contoh: Fig 3.19 Fig NON-DETERMINISTIC FINITE AUTOMATA (Cont d)

21 NON-DETERMINISTIC FINITE AUTOMATA (Cont d) 2.41 NON-DETERMINISTIC FINITE AUTOMATA (Cont d) Transition table for the finite automaton aa* bb* NFA: aa* bb* State Input Symbols a b 0 {1,3} {2} {2} {4} {4}

22 DETERMINISTIC FINITE AUTOMATA (DFA) DFA adalah kasus khusus NFA yang : 1. Tidak ada state dengan transisi ε; yaitu transisi input ε & 2. Untuk setiap state s dan simbol input a hanya ada paling banyak satu sisi berlabel a yang meninggalkan state s. Bila menggunakan transition table untuk merepresentasikan fungsi transisi DFA, setiap entry pada transition table adalah single input. DFA untuk mengenali bahasa (a b)*abb, yang inputnya (string) dibaca ababb mengikuti urutan state 0,1,2,1,2,3 sbb: Fig DETERMINISTIC FINITE AUTOMATA (Cont d)

TEKNIK KOMPILASI Bahasa Regular

TEKNIK 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 terperinci

Teknik Kompiler 5. oleh: antonius rachmat c, s.kom, m.cs

Teknik 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 terperinci

Hirarki Comsky. Unrestricted. Context Sensitive Context free Regular

Hirarki Comsky. Unrestricted. Context Sensitive Context free Regular Hirarki Comsky Unrestricted Context Sensitive Context free Regular Contoh Tata Bahasa Sederhana BEGIN END ;

Lebih terperinci

Alat bantu (tools) dalam pembuatan parser/ analisis sintaksis. Menggunakan simbol persegi panjang untuk non terminal

Alat 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 terperinci

Sebuah bahasa dinyatakan regular jika terdapat finite state automata yang dapat menerimanya. Bahasa-bahasa yang diterima oleh suatu finite state

Sebuah 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 terperinci

TEORI BAHASA DAN OTOMATA [TBO]

TEORI 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 terperinci

Teknik Kompilasi. Notasi Bahasa

Teknik 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 terperinci

SINTAKS. Sintaks dari bahasa pemrograman di defenisikan dengan 2 kumpulan aturan, yaitu:

SINTAKS. 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 terperinci

TEKNIK KOMPILASI Tony Darmanto,ST / Smt V S1 TI / STMIK WIDYA DHARMA/ Hal 16

TEKNIK 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 terperinci

BAB II ANALISA LEKSIKAL (SCANNER)

BAB 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 terperinci

TEORI 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 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 terperinci

Syntax, Semantic & Grammar. Konsep Bahasa Pemrograman Materi 3 Yudianto Sujana, M.Kom

Syntax, 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 terperinci

Ekspresi Reguler Definisi. Notasi Ekspresi Regular. Contoh Ekspresi Reguler [2]

Ekspresi Reguler Definisi. Notasi Ekspresi Regular. Contoh Ekspresi Reguler [2] Ekspresi Reguler Definisi Pertemuan : 3 Dosen Pembina : Danang Junaedi IF-UTAMA 1 Suatu cara untuk merepresentasikan bahasa regular [4] Pola (pattern) atau template untuk string dari suatu bahasa [3] Cara

Lebih terperinci

EKSPRESI REGULAR PADA SUATU DETERMINISTIC FINITE STATE AUTOMATA

EKSPRESI REGULAR PADA SUATU DETERMINISTIC FINITE STATE AUTOMATA Jurnal Matematika Vol.6 No., November 26 [ 63-7 ] EKSPRESI REGULAR PADA SUATU DETERMINISTIC FINITE STATE AUTOMATA Jurusan Matematika, UNISBA, Jalan Tamansari No, Bandung,46, Indonesia dsuhaedi@eudoramail.com

Lebih terperinci

Grammar dan Tingkat Bahasa

Grammar 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 terperinci

TEKNIK KOMPILASI Konsep & Notasi Bahasa

TEKNIK 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 terperinci

PENDAHULUAN. Terdapat tiga topik utama di teori otomata yaitu:

PENDAHULUAN. Terdapat tiga topik utama di teori otomata yaitu: PENDAHULUAN Pengertian Komputer mengikuti sejumlah prosedur sistematis, atau algoritme, yang dapat diaplikasikan untuk serangkaian input (string) yang menyatakan integer dan menghasilkan jawaban setelah

Lebih terperinci

Komponen sebuah Kompilator

Komponen 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 terperinci

3.1. Definisi Syntax Syntax suatu bahasa pemrograman adalah satu himpunan

3.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 terperinci

TEORI BAHASA DAN AUTOMATA

TEORI 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 terperinci

TEORI BAHASA DAN AUTOMATA

TEORI BAHASA DAN AUTOMATA MODUL II TEORI BAHASA DAN AUTOMATA Tujuan : Mahasiswa memahami Finite State Automata (FSA) dan dapat mengeksekusi suatu mesin otomata Materi : FSA dan Implemetasi FSA Deterministic Finite Automata (DFA)

Lebih terperinci

BAB II SINTAKS 2.1. SINTAKS

BAB 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 terperinci

PENGEMBANGAN PROTOTIPE APLIKASI KONVERSI KODE DARI BAHASA C KE PASCAL

PENGEMBANGAN 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 terperinci

SINTAKS. Sintaks dari bahasa pemrograman di defenisikan dengan 2 kumpulan aturan, yaitu:

SINTAKS. 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 terperinci

TEORI BAHASA DAN AUTOMATA

TEORI BAHASA DAN AUTOMATA MODUL VIII TEORI BAHASA DAN AUTOMATA Tujuan : Mahasiswa memahami ekspresi reguler dan dapat menerapkannya dalam berbagai penyelesaian persoalan. Materi : Hubungan antara DFA, NFA, dan ekspresi regular

Lebih terperinci

Teori Bahasa & Otomata

Teori 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 terperinci

Sumarni Adi TEKNIK INFORMATIKA STMIK AMIKOM YOGYAKARTA 2013

Sumarni Adi TEKNIK INFORMATIKA STMIK AMIKOM YOGYAKARTA 2013 Sumarni Adi TEKNIK INFORMATIKA STMIK AMIKOM YOGYAKARTA 2013 KONTRAK KULIAH 1. Presensi 15 menit diawal perkuliahan dan dilakukan sendiri (tidak Boleh Titip Presensi), setelahnya sistem akan ditutup 2.

Lebih terperinci

BAB I PENDAHULUAN 1-1

BAB I PENDAHULUAN 1-1 BAB I PENDAHULUAN 1.1 Pendahuluan Ilmu komputer memiliki dua komponen utama: pertama, model dan gagasan mendasar mengenai komputasi, kedua, teknik rekayasa untuk perancangan sistem komputasi, meliputi

Lebih terperinci

BAB I PENGENALAN TEKNIK KOMPILASI

BAB I PENGENALAN TEKNIK KOMPILASI BAB 1 PENGENALAN TEKNIK KOMPILASI 1 BAB I PENGENALAN TEKNIK KOMPILASI TUJUAN PRAKTIKUM 1) Memahami penggolongan Bahasa Pemrograman berdasarkan tingkat ketergantungannya dengan mesin. 2) Mengetahui dan

Lebih terperinci

Mahasiswa memahami bahasa sebagai himpunan dan operasi 2 -nya, cara mendefinisikan bahasa, serta cara mengenali anggota 2 bahasa

Mahasiswa memahami bahasa sebagai himpunan dan operasi 2 -nya, cara mendefinisikan bahasa, serta cara mengenali anggota 2 bahasa Mahasiswa memahami bahasa sebagai himpunan dan operasi 2 -nya, cara mendefinisikan bahasa, serta cara mengenali anggota 2 bahasa JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INDUSTRI UNIVERSITAS ISLAM

Lebih terperinci

ALGORITMA PEMROGRAMAN 1C SINTAKS

ALGORITMA 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 terperinci

21/11/2016. Pohon Sintaks. Syntax?? Proses Penurunan. Analisis Syntax (Parser) Metode Parsing ANALISIS SINTAKS TEKNIK KOMPILASI

21/11/2016. Pohon Sintaks. Syntax?? Proses Penurunan. Analisis Syntax (Parser) Metode Parsing ANALISIS SINTAKS TEKNIK KOMPILASI 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

Lebih terperinci

Proses Kompilasi. Otomata dan Pengantar Kompulasi Pertemuan 3

Proses 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 terperinci

SEMANTIK. Sintak mendifinisikan suatu bentuk program yang benar dari suatu bahasa.

SEMANTIK. 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 terperinci

BAB II DASAR TEORI. 2.1 Kompilator

BAB 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 terperinci

UNIVERSITAS GUNADARMA

UNIVERSITAS 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 terperinci

Tata Bahasa Pemrograman

Tata 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 terperinci

SEMANTIK. Int vector[10];

SEMANTIK. 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 terperinci

Aplikasi Rekursif dalam Analisis Sintaks Program

Aplikasi 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 terperinci

BAB I TEORI BAHASA DAN AUTOMATA

BAB I TEORI BAHASA DAN AUTOMATA Bab 1 Teori Bahasa dan Automata 1 BAB I TEORI BAHASA DAN AUTOMATA TUJUAN PRAKTIKUM 1. Memahami Tentang Teori Bahasa 2. Memahami Automata dan Istilah Istilah yang terdapat dalam Automata 3. Mengerti Tentang

Lebih terperinci

Teori Komputasi 11/2/2016. Bab 5: Otomata (Automata) Hingga. Otomata (Automata) Hingga. Otomata (Automata) Hingga

Teori Komputasi 11/2/2016. Bab 5: Otomata (Automata) Hingga. Otomata (Automata) Hingga. Otomata (Automata) Hingga Teori Komputasi Fakultas Teknologi dan Desain Program Studi Teknik 1-1 Informatika Bab 5: Agenda. Deterministic Finite Automata DFA (Otomata Hingga Deterministik) Equivalen 2 DFA Finite State Machine FSA

Lebih terperinci

IF-UTAMA 1. Definisi. Grammar. Definisi

IF-UTAMA 1. Definisi. Grammar. Definisi Definisi Grammar Bahasa adalah himpunan kata-kata atau kalimat yang telah disepakati, contoh : {makan, tidur, bermain, belajar} Bahasa Indonesia {shit, sheet, damn, kiss, smell} Bahasa Inggris {konichiwa,

Lebih terperinci

BAB VI CARA PENANGANAN KESALAHAN

BAB 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 terperinci

TEKNIK KOMPILASI Tony Darmanto,ST / Smt V S1 TI / STMIK WIDYA DHARMA/ Hal 1

TEKNIK 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 terperinci

TEKNIK KOMPILASI PERTEMUAN Ke 4 dan 5 Abdul Muis Mappalotteng ANALISIS SEMANTIK

TEKNIK 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 terperinci

PERANCANGAN SISTEM PERBAIKAN ERROR KODE SUMBER PROGRAM OTOMATIS

PERANCANGAN 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 terperinci

anggota alfabet dinamakan simbol terminal atau token.

anggota 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 terperinci

Bahasa adalah kumpulan kalimat. Kalimat adalah rangkaian kata. Kata adalah komponen terkecil kalimat yang tidak bisa dipisahkan lagi.

Bahasa 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 terperinci

Konsep dan Notasi Bahasa. Istiqomah, S.Kom

Konsep 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 terperinci

MK. PEMROGRAMAN SISTEM Semester/SKS : 6/3 COMPILER. Jurusan Sistem Komputer S1 Universitas Gunadarma

MK. PEMROGRAMAN SISTEM Semester/SKS : 6/3 COMPILER. Jurusan Sistem Komputer S1 Universitas Gunadarma MK. PEMROGRAMAN SISTEM Semester/SKS : 6/3 COMPILER Jurusan Sistem Komputer S1 Universitas Gunadarma Aspek Kompilasi Programmer dengan High Level Languange (HLL) vs. Komputer dengan Machine Language Untuk

Lebih terperinci

TEORI BAHASA DAN OTOMATA [TBO]

TEORI BAHASA DAN OTOMATA [TBO] TEORI BAHASA DAN OTOMATA [TBO] Teori Bahasa Teori bahasa membicarakan bahasa formal (formal language), terutama untuk kepentingan perancangan kompilator (compiler) danpemroses naskah (text processor).

Lebih terperinci

Bab III Semantik. Konsep Semantik Bahasa Pemrograman (Semantik Analisis)

Bab 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 terperinci

Pendahuluan [6] FINITE STATE AUTOMATA. Hubungan RE & FSA [5] Finite State Diagram [6] 4/27/2011 IF-UTAMA 1

Pendahuluan [6] FINITE STATE AUTOMATA. Hubungan RE & FSA [5] Finite State Diagram [6] 4/27/2011 IF-UTAMA 1 FINITE STATE AUTOMATA Pertemuan 9 & 10 Dosen Pembina : Danang Junaedi 1 Pendahuluan [6] Bahasa formal dapat dipandang sebagai entitas abstrak, yaitu sekumpulan string yang berisi simbol-simbol alphabet

Lebih terperinci

Tujuan perancangan bhs program

Tujuan 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 terperinci

Teknik Kompilasi Dosen: Utami Dewi W.,S.Kom

Teknik 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 terperinci

Teori Himpunan. Matematika Dasar untuk Teori Bahasa Otomata. Operasi pada Himpunan. Himpunan Tanpa Elemen. Notasi. Powerset & Cartesian Product

Teori Himpunan. Matematika Dasar untuk Teori Bahasa Otomata. Operasi pada Himpunan. Himpunan Tanpa Elemen. Notasi. Powerset & Cartesian Product Teori Himpunan Matematika Dasar untuk Teori Bahasa Otomata Teori Bahasa & Otomata Semester Ganjil 2009/2010 Himpunan adalah sekumpulan entitas tidak memiliki struktur sifatnya hanya keanggotaan Notasi

Lebih terperinci

FINITE STATE AUTOMATA

FINITE STATE AUTOMATA Otomata & Teori Bahasa FINITE STATE AUTOMATA www.themegallery.com Contents 2 3 4 Finite State Automata Implementasi FSA Deterministic Finite Automata (DFA) Non-deterministic Finite Automata (NFA) Finite

Lebih terperinci

Teori Bahasa Formal dan Automata

Teori Bahasa Formal dan Automata Teori Bahasa Formal dan Automata Pertemuan 5 Semester Genap T.A. 2017/2018 Rahman Indra Kesuma, S.Kom., M.Cs. T. Informatika - ITERA REVIEW Apa perbedaan antara NFA dan ϵ-nfa? Apa yang dimaksud dengan

Lebih terperinci

BAB 1 PENDAHULUAN. sederhana adalah kelas bahasa reguler (regular languages). Bahasa reguler dapat dengan

BAB 1 PENDAHULUAN. sederhana adalah kelas bahasa reguler (regular languages). Bahasa reguler dapat dengan BAB 1 PENDAHULUAN 1.1 Latar Belakang Dalam hierarki kelas-kelas bahasa menurut Chomsky, kelas bahasa yang paling sederhana adalah kelas bahasa reguler (regular languages). Bahasa reguler dapat dengan tepat

Lebih terperinci

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS) RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS) Kode / Nama Mata Kuliah : A11. 54401/ Teori dan Bahasa Otomata Revisi 2 Satuan Kredit Semester : 3 SKS Tgl revisi : Februari 2014 Jml Jam kuliah dalam

Lebih terperinci

MODEL 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 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 terperinci

Teori Bahasa Formal dan Automata

Teori 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 terperinci

Teknik Kompilasi II TEKNIK KOMPILASI. Ernastuti & Sulistyo P 1/52. Ernastuti & Sulistyo

Teknik 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 terperinci

KONSEP DASAR BAHASA PASCAL

KONSEP DASAR BAHASA PASCAL KONSEP DASAR BAHASA PASCAL Sejarah Singkat Bahasa PASCAL Dikembangkan awal tahun 70-an oleh NICLAUS WIRTH di Technical University, Zurich Swiss. Nama PASCAL diambil dari nama seorang ahli matematika bangsa

Lebih terperinci

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

PSEUDOCODE 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 terperinci

Tata Bahasa Kelas Tata Bahasa. Konsep Bahasa (1)

Tata 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 terperinci

Teori Bahasa dan Otomata

Teori Bahasa dan Otomata Teori Bahasa dan Otomata Disajikan oleh: Bernardus Budi Hartono Web : http://pakhartono.wordpress.com/ E-mail : pakhartono at gmail dot com budihartono at acm dot org Teknik Informatika [Gasal 2009 2010]

Lebih terperinci

TEKNIK KOMPILASI. Muhamad Nursalman Ilmu Komputer FPMIPA - UPI

TEKNIK KOMPILASI. Muhamad Nursalman Ilmu Komputer FPMIPA - UPI TEKNIK KOMPILASI Muhamad Nursalman Ilmu Komputer FPMIPA - UPI Daftar Isi Bab I Pendahuluan Bab II Analisis Leksikal Bab III Analisis Sintaktik Bab IV Syntax Directed Translation Bab V Intermediate Code

Lebih terperinci

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. dirancang dan selanjutnya dapat diketahui gambaran dan kemampuan sistem secara

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. dirancang dan selanjutnya dapat diketahui gambaran dan kemampuan sistem secara BAB 3 ANALISIS DAN PERANCANGAN PROGRAM 3.1 Analisis Kebutuhan Sistem Analisis kebutuhan sistem merepresentasikan daftar kebutuhan sistem yang akan dirancang dan selanjutnya dapat diketahui gambaran dan

Lebih terperinci

Deterministic Finite Automata

Deterministic Finite Automata CSG3D3 Teori Komputasi Deterministic Finite Automata Agung Toto Wibowo Ahmad Suryan Yanti Rusmawati Mahmud Dwi Sulistiyo Kurniawan Nur Ramadhani Said Al Faraby Dede Rohidin KK Intelligence, Computing,

Lebih terperinci

BAB IV ANALISA SINTAKS

BAB 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 terperinci

1, 2, 3

1, 2, 3 Penerapan Algoritma Depth First Search (DFS) Dinamis Untuk Menentukan Apakah Sebuah String Diterima Oleh Bahasa Reguler yang Didefinisikan Nondeterministic Finite Automata (NFA) Muhammad Ihsan, Ilden Abi

Lebih terperinci

Operasi FA dan Regular Expression

Operasi FA dan Regular Expression CSG3D3 Teori Komputasi Operasi FA dan Regular Expression Agung Toto Wibowo Ahmad Suryan Yanti Rusmawati Mahmud Dwi Sulistiyo Kurniawan Nur Ramadhani Said Al Faraby Dede Rohidin KK Intelligence, Computing,

Lebih terperinci

FTIK / PRODI TEKNIK INFORMATIKA

FTIK / PRODI TEKNIK INFORMATIKA Halaman : 1dari 12 LEMBAR PENGESAHAN DIBUAT OLEH MENYETUJUI Tim SOP dan JUKNIS Prodi IF Mira Kania Sabariah, S.T., M.T Ka Prodi TeknikInformatika Halaman : 2dari 12 DAFTAR ISI Lembar Pengesahan... 1 Daftar

Lebih terperinci

Teknik Kompiler 6. oleh: antonius rachmat c, s.kom

Teknik 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 terperinci

KONSEP GRAMMAR DAN BAHASA

KONSEP GRAMMAR DAN BAHASA KONSEP GRAMMAR DAN BAHASA Konsep Dasar 1. Dalam pembicaraan grammar, anggota alfabet dinamakan simbol terminal atau token. 2. Kalimat adalah deretan hingga simbol-simbol terminal. 3. Bahasa adalah himpunan

Lebih terperinci

FINITE STATE MACHINE / AUTOMATA

FINITE STATE MACHINE / AUTOMATA FINITE STATE MACHINE / AUTOMATA BAHASA FORMAL Dapat dipandang sebagai entitas abstrak, yaitu sekumpulan string yang berisi simbol-simbol alphabet Dapat juga dipandang sebagai entitasentitas abstrak yang

Lebih terperinci

Teori Bahasa dan Operasi Matematis.

Teori Bahasa dan Operasi Matematis. Teori Bahasa dan Operasi Matematis http://www.brigidaarie.com Terminologi Bahasa Manfaat bahasa adalah sebagai media komunikasi yang menggunakan sekumpulan simbol dan dikombinasikan menurut aturan sintaksis

Lebih terperinci

KOMPILASI. Assembler Bahasa Rakitan Bahasa Mesin Compiler (Kompilator) Bahasa Tingkat Tinggi Bahasa tingkat rendah

KOMPILASI. Assembler Bahasa Rakitan Bahasa Mesin Compiler (Kompilator) Bahasa Tingkat Tinggi Bahasa tingkat rendah KOMPILASI Translator (penerjemah) adalah sebuah program yang menerjemahkan sebuah program sumber ( source program) menjadi program sasaran ( target program) Proses translasi suatu program dari bentuk syntax

Lebih terperinci

Teknik Informatika PERTEMUAN 2. TEORI BAHASA & OTOMATA Imam Riadi, M.Kom Shofwatul Uyun, M.Kom. Teknik Informatika

Teknik Informatika PERTEMUAN 2. TEORI BAHASA & OTOMATA Imam Riadi, M.Kom Shofwatul Uyun, M.Kom. Teknik Informatika TEORI BAHASA FST UIN SUKA TEORI BAHASA (PENDAHULUAN) PERTEMUAN 2 Teori bahasa membicarakan bahasa formal (formal language), terutama untuk kepentingan perancangan kompilator (compiler) dan pemroses naskah

Lebih terperinci

TEORI BAHASA DAN OTOMATA PENGANTAR

TEORI BAHASA DAN OTOMATA PENGANTAR TEORI BAHASA DAN OTOMATA PENGANTAR PERKULIAHAN Jumlah pertemuan minimal 13 kali dan maksimal 15 kali sudah termasuk dengan ujian tengah semester (UTS) PENILAIAN ABSEN 10% (Minimal kehadiran 80% dari jumlah

Lebih terperinci

ALGORITMA PEMROGRAMAN 1C SEMANTIKS

ALGORITMA 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 terperinci

Teori Bahasa dan Otomata 1

Teori 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 terperinci

Pendahuluan. Push Down Atomata. Perbedaan FA dan PDA [7] 4/25/2012 IF-UTAMA 1. Grammar-machine equivalence [3] Latar belakang munculnya konsep PDA

Pendahuluan. Push Down Atomata. Perbedaan FA dan PDA [7] 4/25/2012 IF-UTAMA 1. Grammar-machine equivalence [3] Latar belakang munculnya konsep PDA Push Down Automata Pendahuluan Latar belakang munculnya konsep PDA [1 & 3] Terdapat context-free languages yang tidak regular, contoh {0 n 1 n 0=

Lebih terperinci

Non-deterministic Finite Automata Dengan -Move

Non-deterministic Finite Automata Dengan -Move Non-deterministic Finite Automata Dengan -Move Terdapat jenis otomata baru yang disebut NFA dengan -move ( disini bisa dianggap sebagai empty). Pada NFA dengan -move (transisi ), diperbolehkan merubah

Lebih terperinci

MODUL 4: Nondeterministic Finite Automata

MODUL 4: Nondeterministic Finite Automata MODUL 4: Nondeterministic Finite Automata Slide dari 2 FA DENGAN NONDETERMINISME Disamping ini merupakan FA dari suatu bahasa regular dalam {,} * dengan ekspresi regular (+) *. p, q s, u r t Slide 2 dari

Lebih terperinci

Dasar Teori Bahasa & Grammar

Dasar Teori Bahasa & Grammar Dasar Teori Bahasa & Grammar Dasar Teori Bahasa Grammar & Bahasa Klasifikasi Noam Chomsky Teori Bahasa Teori bahasa membicarakan bahasa formal (formal language), terutama untuk kepentingan perancangan

Lebih terperinci

RENCANA PEMBELAJARAN SEMESTER

RENCANA PEMBELAJARAN SEMESTER RENCANA PEMBELAJARAN SEMESTER (RPS) KBKF43102 TEORI BAHASA DAN AUTOMATA S1 TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER UPI YPTK PADANG LEMBAR PENGESAHAN Rencana Pembelajaran Semester (RPS) ini telah disahkan

Lebih terperinci

Struktur Data. PDE - Struktur Data 1

Struktur Data. PDE - Struktur Data 1 Struktur Data Copyright@Ihsan Jatnika PDE - Struktur Data 1 Objektif Mengetahui maksud struktur data dan menjelaskan penggunaannya dalam pemrograman Mengetahui operasi yang terkait dengan struktur data

Lebih terperinci

TEORI BAHASA DAN OTOMATA [TBO]

TEORI 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 terperinci

Fase-fase proses sebuah kompilasi

Fase-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 terperinci

Penerapan Graf Transisi dalam Mendefinisikan Bahasa Formal

Penerapan Graf Transisi dalam Mendefinisikan Bahasa Formal Penerapan Graf Transisi dalam Mendefinisikan Bahasa Formal Abdurrahman Dihya R./13509060 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN I. Elemen-Elemen Dalam Bahasa Pemrograman Berikut adalah elemen-elemen pada bahasa pemrograman: Berikut adalah element-element pada bahasa pemrograman: 1. Aturan

Lebih terperinci

Praktikum 2 Data File pada AWK

Praktikum 2 Data File pada AWK Praktikum 2 Data File pada AWK Tujuan Pembelajaran Mahasiswa dapat memahami dan menggunakan data file dalam bahasa pemrograman awk. Dasar Teori Kebanyakan program komputer bekerja dengan file. Hal ini

Lebih terperinci

Analisis Sintaksis (syntactic analyzer atau parser)

Analisis 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 terperinci

SEMANTIK Syntax mendefinisikan suatu bentuk program yang benar dari suatu bahasa.

SEMANTIK 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 terperinci

SATUAN ACARA PERKULIAHAN STMIK UBUDIYAH INDONESIA SEMESTER GENAP TAHUN AKADEMIK 2013/2014

SATUAN 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 terperinci

SATUAN ACARA PERKULIAHAN (SAP) Semester Penempatan

SATUAN 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 terperinci

TEORI BAHASA & OTOMATA (PENGENALAN KOMPILASI) PERTEMUAN VI Y A N I S U G I Y A N I

TEORI BAHASA & OTOMATA (PENGENALAN KOMPILASI) PERTEMUAN VI Y A N I S U G I Y A N I TEORI BAHASA & OTOMATA (PENGENALAN KOMPILASI) PERTEMUAN VI Y A N I S U G I Y A N I MATERI PERTEMUAN V & VI PENGENALAN KOMPILASI - BAHASA PEMROGRAMAN - TRANSLATOR - MODEL KOMPILATOR - ANALISIS LEKSIKAL

Lebih terperinci

Teknik Kompiler 12. oleh: antonius rachmat c, s.kom

Teknik Kompiler 12. oleh: antonius rachmat c, s.kom Teknik Kompiler 12 oleh: antonius rachmat c, s.kom Code Generator Source code Front End Intermedate Code Code Optimizer Intermedate Code Code Generator Target Program Symbol Table Code Generation Persyaratan

Lebih terperinci