SIMULASI TRANSFORMASI REGULAR EXPRESSION TERHADAP FINITE STATE AUTOMATA

Ukuran: px
Mulai penontonan dengan halaman:

Download "SIMULASI TRANSFORMASI REGULAR EXPRESSION TERHADAP FINITE STATE AUTOMATA"

Transkripsi

1 SIMULASI TRANSFORMASI REGULAR EXPRESSION TERHADAP FINITE STATE AUTOMATA Sinar Sinurat Dosen Tetap STMIK Budi Darma Medan Jl. Sisingamangaraja No. 338 Simpang Limun Medan // ABSTRAK Automata adalah aktivitas yang mengurusi persoalan formalisasi tatabahasa (grammar) dengan alat bantu mesin matematis. Finite State Automata (FSA) terdiri dari Non -Deterministic FSA (N FSA) dan Deterministic FSA (DFA). FSA digunakan untuk mengenali bahasa reguler dengan notasi ekspresi. Dalam automata mengandung unsur : Grammar (tata bahasa), Parsing (mengurai string -string dalam buffer), Scanning (membaca data streaming ke dalam buffer) Dalam paper mencakup bahasan bagaimana proses transformasi reguler expression ke DFA dan NFA dengan menguraikan tahap demi tahap hingga muncul diagram transisi yang akan digunakan untuk meregulasi bahasa. Paper ini akan menghasilkan diagram transisi yang bersifat non deterministik dan deterministik, dan sebelumnya tabel diagram transisi sudah terbentuk. Kata Kunci : Buffer, ekspressi, scanning, diagram transisi, non determistik dan deterministik 1. Pendahuluan 1.1. Latar Belakang Teori bahasa adalah salah satu topik materi pendukung yang membicarakan formalisasi (formal language), terutama untuk kepentingan perancangan kompilator ( compiler) dan pemroses naskah ( text processor). Bahasa formal adalah kumpulan kalimat. Semua kalimat dalam sebuah bahasa dibangkitkan oleh sebuah tata bahasa (grammar) yang sama. Sebuah bahasa formal bisa dibangkitkan oleh dua atau lebih tata bahasa berbeda. Dikatakan bahasa formal karena grammar diciptakan mendahului pembangkitan setiap kalimatnya. Bahasa manusia bersifat sebaliknya; grammar diciptakan untuk meresmikan kata-kata yang hidup di masyarakat. Dalam pembicaraan selanjutnya bahasa formal akan disebut bahasa saja. Mengenali ( recognize), menerima ( accept), atau membangkitkan ( generate) sebuah kalimat dalam bahasa tertentu. Automata secara umum dipelajari bersama dengan teori bahasa. Alasan yang mendasar adalah sebagai berikut : 1. Rangkaian input dapat dianggap sebagai bahasa yang harus dikenali oleh automata tersebut. 2. Automata dapat berfungsi untuk membangkitkan bahasa tertentu yang aturannya ditentukan oleh tata bahasa (grammar) tertentu. Beberapa perbedaan di antara keduanya adalah bahwa DFA menerima sebuah input dimana state tujuan dari input tersebut adalah satu, sedangkan NDFA dapat menuju beberapa state tujuan untuk input yang sama. Perbedaan lainnya adalah DFA tidak menerima input kosong ( empty), tidak seperti NDFA. FSA yang biasanya pertama kali dirancang adalah NFA, dan kemudian ditransformasi ke bentuk DFA sebagai bentuk yang lebih minimal dan efisien. Dalam proses transformasi, umumnya dilakukan beberapa tahapan khusus dan kompleks Tujuan Adapun tujuan yang ingin dicapai adalah: 1. Untuk mengetahui proses transformasi (konversi) ekspressi reguler ke bentuk DFA yang efektif dan lebih praktis. 2. Untuk memberikan deskripsi yang lebih praktis dalam pemahaman proses regulasi bahasa beserta proses pembuatan diagram transisi. 3. Untuk memberi kemudahan terhadap para pemrogram untuk membuat coding dalam bahasa pemrograman yang sesuai dengan keinginan Identifikasi Masalah Agar pembahasan tidak terlalu meluas dan tidak menyimpang dari tujuan maka maka unsur-unsur yang akan dibahas adalah sebagai berikut : 1. Pemberian input ekpressi reguler yang sederhana dan memenuhi kaidah grammar 2. Proses transformasi ekspressi reguler ke NFA kemudian kebentuk DFA dilakukan dengan tahap-tahap. 3. Tahap demi tahap transformasi mengandung langkah-langkah yang diulang (iterasi). 1

2 1.4. Batasan Masalah Agar pembahasan lebih fokus diberikan batasan yaitu: 1. Input ekspressi reguler/ bahasa reguler sembarang 2. Proses transformasi (konversi) dalam domain prinsip-prinsip kompilasi 3. State-state yang diterima adalah simbol nonterminal berupa 1 karakter huruf kapital atau angka. 4. Alfabet-alfabet yang diterima sebagai input untuk otomata adalah 1 karakter sembarang (non kapital jika huruf) dan alfabet empty (ε) sebagai karakter spasi (blank). 5. Tidak membahas penentuan inaccessible state dan state ekuivalen Metode Penelitian Penyelesaian paper ini dilakukan dengan cara : 1. Kepustakaan a. Mencari sejumlah literatur yang berhubungan dengan automata dan kompilasi baik berupa buku, artikel (majalah maupun internet), source code program, dan sebagainya. b. Mencari bentuk konversi yang lebih mudah dipahami dan diterakan ke dalam bahasa pemrograman c. Merancang algoritma yang menginterpretasikan seluruh langkah teoritis dalam bentuk pseudo code 2. Laboratorium a. Merancang coding program yang dapat dikompilasi sewaktu-waktu b. Menguji program dengan sejumlah input ekpressi reguler yang bervariasi c. Validasi dengan sejumlah teori dan mencatat sejumlah perbedaan antara teori dan praktek d. Implementasi 2. Dasar Teoritis 2.1 Beberapa Pengertian Dasar Proses penerjemahan suatu bahasa sumber (source program) menjadi bahasa target (target program), biasanya dilakukan dengan proses kompilasi, perhatikan diagram berikut : Beberapa tools software yang dapat digunakan bahasa sumber seperti : 1. Structure Editor : mengambil sejumlah untaian perintah untuk dibangun menjadi bahasa sumber, membuat teks, dan memodifikasi fungsi yang aneh serta menganalisa teks program dalam bentuk hirarki 2. Pretty Printer : menganalisa suatu program dan cetakan dengan beberapa cara sehingga struktur program menjadi jelas, misalnya berupa font tertentu, indend (tab) 3. Static Checker : membaca, mengalisa, menempatkan program dalam posisi tawaran perubahan serta mendeteksi program tanpa pernah dieksekusi 4. Interpreter : menghasilkan suatu target program sebagai suatu translasi untuk dipakai menjadi source program Program-program yang menggunakan teknologi kompiler konvensional antara lain : 1. Text Formatter : mengambil input sebagai stream karakter termasuk perintah untuk mengenali paragraf, gambar atau struktur matematika (subscript, superscript) 2. Silicon Compiler : fungsional programming languange di mana variabel-variabel merepresentasi bahasa untuk signal logika (0 or 1 or grup signal) tidak berada di memory akan tetapi ada di rangkaian switching 3. Query Interpreter : menerjemahkan predikat relasi dan operator boolean menjadi command untuk mencari database records yang memenuhi predikat Beberapa pemahaman dasar untuk mengenali (recognize), menerima ( accept), ataupun membangkitkan ( generate) sebuah kalimat dalam bahasa tertentu adalah sebagai berikut : 1. Simbol adalah sebuah entitas abstrak (seperti halnya pengertian titik dalam geometri). Sebuah huruf atau sebuah angka adalah contoh simbol. 2. String adalah deretan terbatas ( finite) simbolsimbol. Sebagai contoh, jika a, b, dan c adalah tiga buah simbol maka abcb adalah sebuah string yang dibangun dari ketiga simbol tersebut. 3. Jika w adalah sebuah string maka panjang string dinyatakan sebagai w dan didefinisikan sebagai cacahan (banyaknya) simbol yang menyusun string tersebut. Sebagai contoh, jika w = abcb maka w= String hampa adalah sebuah string dengan nol buah simbol. String hampa dinyatakan dengan simbol (atau ^) sehingga = 0. String hampa dapat dipandang sebagai simbol hampa karena keduanya tersusun dari nol buah simbol. 5. Alfabet adalah hinpunan hingga ( finite set) simbol-simbol 2.2 Operasi Dasar String Diberikan dua string : x = abc dan y=123 Prefix string w adalah string dihasilkan dari string w dengan menghilangkan nol atau lebih simbol-simbol paling belakang dari string w 2

3 tersebut. Contoh : abc, ab, a, dan adalah semua Prefix(x) Proper Prefix string w adalah string dihasilkan dari string w dengan menghilangkan satu atau lebih simbol-simbol paling belakang dari string w tersebut. Contoh : ab, a, dan adalah semua Proper Prefix(x) Postfix (Suffix) string w adalah string dihasilkan dari string w dengan menghilangkan nol atau lebih simbol paling depan dari string w tersebut. Contoh : abc, bc, c, dan adalah semua Postfix(x) Proper Postfix (atau Proper Suffix) string w adalah string yang dihasilkan dari string w dengan menghilangkan satu atau lebih simbol paling depan dari string w tersebut. Contoh : bc, c, dan adalah semua Proper Postfix(x). Head string w adalah simbol paling depan dari string w. Contoh : a adalah Head(x). Tail string w adalah string dihasilkan dari string w dengan menghilangkan simbol paling depan dari string w tersebut. Contoh : bc adalah Tail(x) Substring w adalah string dihasilkan dari string w dengan menghilangkan nol atau lebih simbol paling depan dan/atau simbol paling belakang dari string w tersebut. Contoh : abc, ab, bc, a, b, c, dan adalah semua Substring (x) Proper Substring w adalah string dihasilkan dari string w dengan menghilangkan satu atau lebih simbol paling depan dan/atau simbol paling belakang dari string w tersebut. Contoh : ab, bc, a, b, c, dan adalah semua Substring (x) Subsequence string w adalah string yang dihasilkan dari string w dengan menghilangkan nol atau lebih simbol dari string w tersebut. Contoh : abc, ab, bc, ac, a, b, c, dan adalah Subsequence (x) Proper Subsequence string w adalah string yang dihasilkan dari string w dengan menghilangkan satu atau lebih simbol dari string w tersebut. Contoh : ab, bc, ac, a, b, c, dan adalah semua Subsequence (x) Concatenation adalah penyambungan dua buah string. Operator concatenation adalah concate atau tanpa lambang. Contoh : concate(xy) = xy = abc123 Alternation adalah satu di antara dua buah string. Operator alternation adalah alternate atau. Contoh : alternate(xy) = xy = abc atau 123 Kleene Closure, berbentuk : x* = xxx = xx 2 x 3 Positive Closure : x = xxx = xx 2 x Beberapa Sifat Operasi Sejumlah operasi string yang dapat digunakan untuk transformasi adalah : Tidak selalu berlaku : x = Prefix(x) Postfix(x) Selalu berlaku : x = Head(x)Tail(x) Tidak selalu berlaku : Prefix(x) = Postfix(x) atau Prefix(x) Postfix(x) Selalu berlaku : ProperPrefix(x) ProperPostfix(x) Selalu berlaku : Head(x) Tail(x) Setiap Prefix(x), ProperPrefix(x), Postfix(x), ProperPostfix(x), Head(x), dan Tail(x) adalah Substring(x), tetapi tidak sebaliknya Setiap Substring(x) adalah Subsequence(x), tetapi tidak sebaliknya Dua sifat aljabar concatenation : a. Operasi concatenation bersifat asosiatif : x(yz) = (xy)z b. Elemen identitas operasi concatenation adalah : x = x = x Tiga sifat aljabar alternation : a. Operasi alternation bersifat komutatif : xy = yx b. Operasi alternation bersifat asosiatif : x(yz) = (xy)z c. Elemen identitas operasi alternation adalah dirinya sendiri : xx = x Sifat distributif concatenation terhadap alternation : x (yz) = xyxz Beberapa kesamaan : a. Kesamaan ke-1 : (x*)* = (x*) b. Kesamaan ke-2 : x = x = x* c. Kesamaan ke-3 : ( xy)* =xyxxyyxyyx = semua string yang merupakan concatenation dari nol atau lebih x, y, atau keduanya. 2.4 Proses Regulasi Automata dan Bahasa Automata merupakan sekuensi proses secara otomatis yang menerima input dan menghasilkan output yang bersifat diskret. Rangkaian input yang diterima adalah string atau bahasa yang dikenali oleh automata. Jika rangkaian input yang diterima dan dikenali maka mesin menghasilkan output. Contoh dari automata yang telah dikenal luas adalah mesin Mealy dan mesin Moore. Bahasa merupakan kumpulan string-string dari simbol-simbol untuk suatu alfabet, atau rangkaian dari simbol-simbol yang memiliki makna. Dalam konteks automata, string-string yang di-input ke dalam otomata harus merupakan bahasa yang dapat dikenali oleh aturan pada automata. Aturan pada automata ini disebut sebagai fungsi transisi. Bahasa memiliki aturan yang disebut sebagai tata bahasa ( grammar). Dalam hubungannya dengan automata, Noam Chomsky melakukan 3

4 penggolongan menjadi 4 (empat) tingkatan bahasa berdasarkan aturan produksinya sebagai berikut: 1. Bahasa Reguler (tipe 3) Menggunakan Finite State Automata (FSA) sebagai pengenalnya. FSA umumnya terdiri dari sejumlah state (simbol non-terminal) sebagai kondisi pada automata, alfabet (simbol terminal) sebagai string input, state awal, state akhir, dan fungsi-fungsi transisi yang menentukan state automata yang aktif setelah menerima string input tertentu. FSA dapat dibagi menjadi 2 (dua) jenis, yaitu Non-Deterministic FSA (NFA) dan Deterministic FSA (DFA). Ciri-ciri sekaligus perbedaan di antara keduanya antara lain: a. NFA mengandung alfabet serta transisi empty (empty string/transition), sedangkan DFA tidak. b. State pada NFA dapat terdiri beberapa simbol non-terminal (mis. ABC), sedangkan state DFA hanya terdiri dari 1 simbol nonterminal. c. Satu alfabet input pada NFA dapat digunakan untuk menuju beberapa state yang berbeda (probabilitas), sedangkan alfabet input pada DFA hanya menuju 1 state. 2. Bahasa Bebas Konteks (tipe 2) Merupakan dasar pembentukan parser (pemroses analisis sintaksis pada kompilasi) yang dideskripsikan secara formal dengan notasi Backus-Nour Form (BNF) yang dikembangkan oleh Backus (1959) dan Peter Nour (1960). Bahasa ini menggunakan mesin Push-Down Automata. 3. Bahasa Context-Sensitive (tipe 1) Digunakan dalam proses analisis semantik dari tahapan kompilasi. Bahasa ini menggunakan mesin Linear-Bounded Automata. 4. Bahasa Unrestricted/ Alami (tipe 0) Bahasa ini seperti bahasa manusia. Menggunakan mesin Turing yang dirancang oleh Alan Mathison Turing. Mesin Turing digambarkan berupa barisan sel tersusun berupa pita yang dapat bergerak maju mundur, komponen aktif baca/ tulis pita yang memiliki status perhitungan serta dapat mengubah/ menulisi sel aktif pita. Model ini merupakan suatu kumpulan instruksi yang mendeskripsikan bagaimana komponen baca/tulis ini harus melakukan modifikasi terhadap sel aktif pada pita, serta bagaimana menggerakkan pita tersebut. Pada setiap langkah dalam komputasi, mesin ini akan dapat mengubah isi dari sel yang aktif, mengubah status dari komponen baca/tulis, dan mengubah posisi pita ke kiri atau ke kanan. 2.5 Analisa Penentuan Type Grammar Untuk penulisan grammar, maka perlu memperhatikan tipe grammar sebagai berikut : 1. Grammar G1 dengan Q1 = {S ab, B bb, B b}. Ruas kiri semua produksinya terdiri dari sebuah V N maka G 1 kemungkinan tipe contex free grammar (CFG) atau regular grammar (RG). Selanjutnya karena semua ruas kanannya terdiri dari sebuah V T atau string V T V N maka G 1 adalah RG. 2. Grammar G 2 dengan Q 2 = {S Ba, B Bb, B b}. Ruas kiri semua produksinya terdiri dari sebuah V N maka G 2 kemungkinan tipe CFG atau RG. Selanjutnya karena semua ruas kanannya terdiri dari sebuah V T atau string V T V N maka G 2 adalah RG. 3. Grammar G 3 dengan Q 3 = {S Ba, B bb, B b}. Ruas kiri semua produksinya terdiri dari sebuah V N maka G 3 kemungkinan tipe CFG atau RG. Selanjutnya karena ruas kanannya mengandung string V T V N (yaitu bb) dan juga string V N V T (Ba) maka G 3 bukan RG, dengan kata lain G 3 adalah CFG. 4. Grammar G 4 dengan Q 4 = {S aab, B ab}. Ruas kiri semua produksinya terdiri dari sebuah V N maka G 4 kemungkinan tipe CFG atau RG. Selanjutnya karena ruas kanannya mengandung string yang panjangnya lebih dari 2 (yaitu aab) maka G 4 bukan RG, dengan kata lain G 4 adalah CFG. 5. Grammar G 5 dengan Q 5 = {S aa, S ab, aab abcb}. Ruas kirinya mengandung string yang panjangnya lebih dari 1 (yaitu aab) maka G 5 kemungkinan tipe context sensitive grammar (CSG) atau unrestricted grammar (UG). Selanjutnya karena semua ruas kirinya lebih pendek atau sama dengan ruas kananya maka G 5 adalah CSG. 6. Grammar G 6 dengan Q 6 = {as ab, SAc bc}. Ruas kirinya mengandung string yang panjangnya lebih dari 1 maka G 6 kemungkinan tipe CSG atau UG. Selanjutnya karena terdapat ruas kirinya yang lebih panjang daripada ruas kananya (yaitu SAc) maka G 6 adalah UG Derivasi Kalimat dan Penentuan Bahasa Untuk menentukan bahasa dari masing-masing grammar pada contoh berikut : Contoh 1 : G 1 dengan Q 1 = {1. S aaa, 2. A aaa, 3. A b}, maka : derivasi kalimat terpendek : Derivasi kalimat umum : S aaa S aaa aba (3) aaaaa (2) a n Aa n (2) 4

5 a n ba n (3) Dari ke dua pola kalimat diperoleh : L 1 (G 1 )={a n ba n n 1} Contoh 2 : G 2 dengan Q 2 = {1. S as, 2. S ab, 3. B bc, 4. C ac, 5. C a}, maka : derivasi kalimat terpendek : Derivasi kalimat umum : S ab (2) S as abc (3) aba (5) a n-1 S a n B (2) a n bc (3) a n bac (4) a n ba m-1 C (4) a n ba m (5) Dari ke dua pola di atas diperoleh : L 2 (G 2 )={a n ba m n,m 1} Contoh 3 : G 3 dengan Q 3 = {1. SaSBC, 2. S abc, 3. bb bb, 4. bc bc, 5. CB BC, 6. cc cc} Maka diperoleh : derivasi kalimat terpendek : Derivasi kalimat umum : S abc (2) S asbc abc (4) aasbcbc Derivasi terpendek 2 : aaabcbcbc (2) S asbc aaabbccbc (5) aabcbc (2) aaabbcbcc (5) aabbcc (5) aaabbbccc (5) aabbcc (3) aaabbbccc (3) aabbcc (4) aaabbbccc (3) aabbcc (6) aaabbbccc (4) aaabbbccc (6) aaabbbccc (6) Dari ke tiga pola kalimat di atas disimpulkan : L 3 (G 3 ) = { a n b n c n n 1} 2.7 SCANNING BUFFER Implementasi Scanner dengan siklus transformasi : GRER AHNAHDGR. Sebagai contoh, scanner (yaitu DFA) untuk mengenali identifier adalah : Berikut fragmen program dari bahasa pascal : type Text_Pos = record {posisi penunjuk karakter} Row_Numb : word; {baris ke-, bisa ribuan baris/program_sumber} Char_Numb : byte; {karakter ke-, maksimum 255 karakter/baris} var Now_Pos : Text_Pos; {posisi sekarang} Line : string; {baris yang sedang diproses} End_of_line : byte; {posisi akhir baris yang sedang diproses} procedure Next_Character(var Ft : text); {baca karakter berikut pada program_sumber} with Now_Pos do { perintah with... do?} if Char_Numb = End_of_line then List_Line; {menampilkan kembali baris yang telah dibaca, beserta errornya} Next_Line(Ft); {membaca baris berikutnya} Row_Numb := Row_Numb + 1; Char_Numb := 1 end else Char_Numb := Char_Numb + 1; character := Line[Char_Numb] end procedure List_Line; write{now_pos.row_numb : 3, ); writeln(line); List_Error; {menampilkan kesalahan-kesalahan yang terjadi pada suatu baris} end procedure Next_Line(Ft : text); readln(ft, Line); End_of_line := length(line) + 1: Line := Line + #32; {karakter spasi} 2.8 PENULISAN GRAMMAR Reguler Expression (RE) Vs Context Free Grammar (CFG). RECFG : Setiap bentuk yang dapat dideskripsikan oleh RE dapat di deskripsikan oleh CFG CFG dibentuk dari diagram transisi dengan aturan : 5

6 Misalnya : RE : (a b)*abb maka CFG: A 0 aa 0 ba 0 aa 1 A 1 ba 2 A 2 ba 3 A 3 RE digunakan untuk lexical analysis, alasannya adalah : 1. Penulisan RE lebih sederhana 2. Notasi RE lebih mudah dimengerti 3. RE dapat menghasilkan scanner yang efisien 4. Modularisasi analisis Di sisi lain bahwa RE lebih sesuai untuk mendeskripsikan token-token yaitu : 1. Identifier 2. Constant 3. Keyword (reserve word), dan lain-lain Sedangkan CFG lebih mudah untuk mendeskripsikan struktur tersarang (nested) dan berpasang (matched) yaitu 1. Tanda kurung yang berpasangan 2. Begin dan end 3. If dan else 4. FOR do atau while do 2.9 Finite State Automata FSA (NFA atau DFA) umumnya terdiri dari: 1. Himpunan state (simbol non-terminal) sejumlah terhingga yang disimbolkan dengan Q merupakan keadaan pada otomata yang dapat berubah menjadi state lain setelah menerima alfabet yang di-input. Dalam penulisan himpunan Q, state yang dituliskan pertama kali umumnya adalah state awal. 2. Himpunan alfabet (simbol terminal) sejumlah terhingga yang disimbolkan dengan adalah simbol-simbol yang dapat dikenali oleh otomata ketika di-input sebagai string. 3. Himpunan fungsi transisi yang disimbolkan dengan mengenali alfabet-alfabet ( string) yang di-input pada otomata dan kemudian merubah state yang berlaku sekarang menjadi state lain. Misalnya string input terdiri dari 3 (tiga) alfabet, maka state dapat berubah sebanyak 3 kali dengan menggunakan 3 fungsi transisi. Contoh sebuah fungsi transisi adalah (S,0)=D, yang berarti bahwa jika alfabet 0 di-input saat state yang aktif adalah S maka state yang aktif menjadi D. 4. State awal yang disimbolkan dengan q 0 adalah state yang langsung aktif saat automata dijalankan. State awal berjumlah 1 (satu) buah. 5. Himpunan state akhir ( final) yang disimbolkan dengan F. Misalnya string input terdiri dari 3 (tiga) alfabet dengan menggunakan fungsi transisi yang ada, maka jika state ketiga bukan merupakan anggota himpunan F berarti string tersebut tidak dapat diterima/dikenali oleh otomata. Contoh komponen-komponen sebuah otomata adalah sebagai berikut: M = (Q,,,q0,F) Q = {S,A,B,C} = {0,1} q0 = S F = {S} = {(S,0)=B, (S,1)=A, (A,0)=C, (A,1)=S, (B,0)=S, (B,1)=C, (C,0)=A, (C,1)=B} Pada contoh di atas, S adalah state awal sekaligus state akhir. Fungsi transisi (S,0)=B berarti bahwa jika state sekarang adalah S dan alfabet yang di-input adalah 0, maka state berubah menjadi B. Adapun Tabel dan diagram yang digunakan dalam pembuatan pohon adalah : 1. Pohon sintaks dari Augmental RE r 2. Rules untuk menentukan nullable, firstpos, lastpos 3. Rules untuk menentukan followpos a. Jika n adalah cat-node left-child c 1 dan rightchild c 2, dan i adalah posisi dalam lastpos (c 1 ) maka semua posisi lastpos (c 2 ) adalah followpos (i) b. Jika n adalah node start dan i adalah posisi dalam lastpos (n) maka semua posisi firstpos (n) adalah dalam followpos (i) 3. Simulasi Model Transformasi 3.1 Model 6

7 Diberikan sembarang ekspressi reguler (RE), misalkan: r=(a b) * abb, maka langkah-langkah untuk mengkonversikan adalah sebagai berikut : 1. Tambahkan augmented pada RE yaitu : r = ( a b ) * a b b # 2. Berikan indeks untuk masing-masing karakter yang ada pada RE untuk menyatakan posisi node dalam pohon yaitu : r = ( a b ) * a b b # Buatlah pohon sintaks untuk menyatakan nilai firstpost, lastpos dan nullable yaitu : 4. Buatlah tabel Followpos dalam Himpunan posisi semua simbol terletak pada sesudah symbol pada posisi n masing-masing node pada langkah 2 yaitu : Node Followpos {1,2,3} {1,2,3} {4} {5} {6} - 5. Berdasarkan tabel pada langkah 4 dapat dibuat diagram transisi NFA (Digraph untuk fungsi followpos) yaitu : 6. Buatlah tabel DFA dengan menggunakan tabel followpos yaitu : 7. Bentuklah diagram transisi DFA dari tabel langkah 6 yaitu : 3.2 Simulasi DFA Simulasi DFA dimaksudkan untuk mengenali token. type Token_Kind = record tipe : byte; nilai : byte var Token : array[0..max_state] of Token_Kind; Found_Token : Token_Kind; {token yang ditemukan} Tok_Pos : Text_Pos; {posisi token dalam program sumber} procedure Next_Token(var Ft : text); {digunakan untuk mengenali sebuah token} var state1, state2 : shortint; state1 := 0; Tok_Pos := Now_Pos; repeat state2 := Next_State(state1, character); if state2 <> -1 then {-1 bersesuaian dengan x pada tabel transisi} state1 := state2; Next_Character(Ft); {baca karakter berikut pada program_sumber} {di antaranya menghasilkan nilai baru untuk Now_Pos} until state2 = -1; Act_for_Token(state1); procedure Act_for_Token(state : shortint); var Tok_Length : byte; Err : integer; Current_Token(Token[state].tipe, Token[state].nilai); Tok_Length := Now_Pos.Char_Numb - Tok_Pos.Char_Numb; case Token[state].tipe of 0 : Error( Token tidak dikenal!, Tok_Pos); 27 : Id := copy(line, Tok_Pos.Char_Num, Tok_Length); 28 : val(copy(line, Tok_Pos.Char_Num, Tok_Length), IN, Err); 29 : val(copy(line, Tok_Pos.Char_Num, Tok_Length), RN, Err); end catatan : - copy(string, start, length) mengembalikan substring - val(string_value, number_variable, error_flag) : jika string_value = 137 maka number_variable = 137 dan error_flag = 0 jika string_value = string maka number_variable = 137 dan error_flag 0 - Token.tipe {1, 2, 3,..., 26} dimisalkan bernilai pasti, sehingga tidak perlu penangan-an lebih lanjut procedure Current_Token(tipe, nilai : byte); Found_Token.tipe := tipe; Found_Token.nilai := nilai; 7

8 4. Implementasi 4.1 Form Ekspressi Reguler Pada form ini dilakukan penginputan string untuk state, dan fungsi transisi dari NFA yang akan diproses (ditransformasi). Algoritma dalam penginputan state adalah sebagai berikut: 1. Input string 2. Jika string yang diinput adalah string akhir, beri tanda pada kotak cek Final. Algoritma dalam penginputan fungsi transisi adalah sebagai berikut: a. Input state. b. Cari state tersebut pada tabel transisi. i. Jika state tersebut tidak ada, kembali ke langkah a. ii. Jika state tersebut ada, dilanjutkan ke langkah c. c. Input alfabet. d. Cari alfabet tersebut pada tabel transisi. i. Jika alfabet tersebut tidak ada, maka kembali ke langkah c. ii. Jika alfabet tersebut ada, dilanjutkan ke langkah e. e. Input state tujuan dari fungsi transisi. f. Cari state tujuan tersebut pada tabel transisi i. Jika state tersebut tidak ada, kembali ke langkah f. ii. Jika state tersebut ada, dilanjutkan ke langkah g. g. Tambahkan fungsi transisi ke dalam tabel transisi. 4.2 Form Fungsi Pohon Transisi Form ini menampilkan simulasi proses pembentukan pohon fungsi transisi state yang memiliki transisi atas input firstpos, lastpos dan nullable. Algoritma proses ini adalah sebagai berikut: 1. Mulai dari leaf hingga root 2. Cek apakah node untuk fungsi and or atau fungsi * closure dan + closure. 3. Untuk masing-masing node akan diberi 3 nilai di mana untuk setiap leaf bahwa firstpos dan lastpos dari indeks yang ada pada pohon sedangkan nullable diberi nilai false. 4. Untuk selanjutnya pada proses pemberian nullable dilakukan berdasarkan tabel kebenaran ke dua ruas kanan dan ruas kiri. Dengan cara yang sama sehingga semua posisi node akan mendapatkan nilai nullable 5. Untuk pemberian nilai firstpos dan laspos untuk masing-masing node selain leaf gunakanlah tabel rules untuk nullabel, firstpos dan lastpos. Ulangi dengan cara yang sama sehinga semua node akan terisi nilai firstpos dan lastpos 6. Ambil posisi firstpos pada root untuk dijadikan menjadi set root. 5. Kesimpulan dan Saran. 5.1 Kesimpulan Berdasarkan uraian dari bab I hingga bab IV maka dapat diambil kesimpulan sebagai berikut : 1. Konversi ekspressi reguler menjadi DFA menjadi dasar pembentukan grammar pada bahasa dalam proses kompilasi 2. Konversi ini merupakan dasar analisa sintaksis dan semantik pada proses kompilasi 3. Dapat dijadikan sebagai media pembelajaran 5.2 Saran Demi kesempurnaan paper ini, perlu beberapa saran sebagai berikut : 1. Untuk dikembangkan dalam dalam beberapa bahasa pemrograman yang dinamis 2. Penguraian dalam topik ini masih banyak yang menyertakan teori-teori yang vital. Oleh karena itu untuk para pengembang selanjutnya dapat melengkapinya. Daftar Pustaka 1. Sanjay Bhargava, G.N. Purohit, Construction of a Minimal Deterministic Finite Automaton from a Regular Expression, Department Of Computer Science Banasthali unversity, John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ulman, Teori Bahasa dan Otomata, 2 nd, Andi Offset, Marco Almeida, Nelma Moreira, Rog erio Reis, Exact Generation of Minimal Acyclic Deterministic Finite Automata, Technical Report Series: DCC Version Carmen Galvez and Félix Moya- Anegón, Approximate Personal Name- Matching Through Finite-State Graphs, Department of information Science, University of Granada, Campus Cartuja, Colegio Máximo, 18071, Granada, Spain, Paritosh K. Pandya, Finite State Automata Automata: Theory and Practice, (TIFR, Mumbai, India), Unversity of Trento, May H. Aho, Alfred V., Ravi Sethi and Jeffrey D. Ulman, Compiler : Principle, Techniques and Tools, Addition-Wesley Publishing Company, (1986) 7. Pittman, Thomas and James Peters, The Art Compiler Design : Theory and Practice, Prentice Hall, (1992) 8. Aho, Alfred V., Ravi Sethi and Jeffrey D. Ulman, Principles of Compiler Design, Addison-Wesley, (1977) 9. Sumantri Slamet, Heru Suhartanto, Teknik Kompilasi, PT. Elex Media Computindo,

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

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 Komputasi 10/15/2015. Bab 3: Konsep Bahasa dan Otomata. Teori Bahasa. Teori Bahasa. Agenda. Teori Bahasa Otomata Operasi Dasar String

Teori Komputasi 10/15/2015. Bab 3: Konsep Bahasa dan Otomata. Teori Bahasa. Teori Bahasa. Agenda. Teori Bahasa Otomata Operasi Dasar String Teori Komputasi Agenda. Teori Bahasa Bab 3: Konsep Bahasa dan Fakultas Teknologi dan Desain Program Studi Teknik 1-1 Informatika Konsep Bahasa dan 2 Teori Bahasa Teori bahasa membicarakan bahasa formal

Lebih terperinci

MATERI PERTEMUAN KE-1

MATERI PERTEMUAN KE-1 TEORI BAHASA DAN OTOMATA MATERI PERTEMUAN KE-1 TEORI BAHASA Teori bahasa membicarakan bahasa formal (formal language), terutama untuk kepentingan perancangan kompilator (compiler) dan pemroses naskah (text

Lebih terperinci

TEORI BAHASA DAN OTOMATA [TBO]

TEORI BAHASA DAN OTOMATA [TBO] TEORI BAHASA DAN OTOMATA [TBO] Otomata (Automata) Otomata adalah mesin abstrak yang dapat mengenali (recognize), menerima (accept), atau membangkitkan (generate) sebuah kalimat dalam bahasa tertentu. Beberapa

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

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

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

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

metodenumerikblog.wordpress.com Retno Tri Vulandari, S.Si, M.Sc

metodenumerikblog.wordpress.com Retno Tri Vulandari, S.Si, M.Sc Retno Tri Vulandari, S.Si, M.Sc String Simbol KALIMAT Bahasa TEORI BAHASA Bahasa Formal Adalah suatu sistem yang terdiri atas sejumlah berhingga state yang menerima input dan mengeluarkan output dalam

Lebih terperinci

TEORI BAHASA DAN OTOMATA

TEORI BAHASA DAN OTOMATA TEORI BAHASA DAN OTOMATA MATERI KULIAH : Topik Substansi 1 Kontrakpembelajaran, Pendahuluan a. Ketentuan dalam Kuliah b. Pengertian Bahasa c. Pengertian Otomata 2 Pengertian Dasar dan Operasi pada string

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

GRAMMAR AND LANGUAGE

GRAMMAR AND LANGUAGE GRAMMAR AND LANGUAGE Konsep Dasar Anggota alfabet dinamakan simbol terminal. Kalimat adalah deretan hingga simbol-simbol terminal. Bahasa adalah himpunan kalimat-kalimat. Anggota bahasa bisa tak hingga

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

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

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 & 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

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

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

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

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

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

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

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

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

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

MODUL MATA KULIAH TEORI BAHASA DAN OTOMATA DOSEN:

MODUL MATA KULIAH TEORI BAHASA DAN OTOMATA DOSEN: MODUL MATA KULIAH TEORI BAHASA DAN OTOMATA DOSEN: Mira Kania S.,ST.,MT Utami Dewi W.,S.Kom IF I. PENDAHULUAN PENDAHULUAN Komputer digunakan sebagai alat bantu untuk menyelesaikan pekerjaan(task). Dua pertanyaan

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

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

Teori Bahasa & Otomata

Teori Bahasa & Otomata Teori Bahasa & Otomata Heri Sutarno - 131410892 Pendilkom/Ilkom Universitas Pendidikan Indonesia Bandung, 2008 08/06/2010 TBO/heri/ilkom 1 Buku Bacaan - Aho, Alfred V., Ravi Sethi and Jeffrey D Ulman,

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

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

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

MODUL 17. BAHASA-BAHASA REKURSIF DAN RECURSIVELY ENUMERABLE

MODUL 17. BAHASA-BAHASA REKURSIF DAN RECURSIVELY ENUMERABLE MODUL 17. BAHASA-BAHASA REKURSIF DAN RECURSIVELY ENUMERABLE TM T r untuk suatu bahasa rekursif akan menjawab (recognize) atau setelah memproses string masukan. T r Dalam pembahasan sebelumnya kita mendapatkan

Lebih terperinci

BAHASA REGULER 1. Ekspresi Regular

BAHASA REGULER 1. Ekspresi Regular BAHASA REGULER 1. Ekspresi Regular Bahasa regular adalah penyusun ekspresi regular (ER) Ekspresi regular terdiri dari kombinasi simbol-simbol atomik menggunakan 3 operator : concate, alternate, dan closure/repetisi.

Lebih terperinci

BAB II TINJAUAN PUSTAKA. Bahasa menurut kamus Websters adalah the body of words and methods of

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

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

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

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran SILABUS MATAKULIAH Revisi : 2 Tanggal Berlaku : Maret 2014 A. Identitas 1. Nama Matakuliah : A11. 54401/ Teori dan Bahasa Otomata 2. Program Studi : Teknik Informatika-S1 3. Fakultas : Ilmu Komputer 4.

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

TEORI BAHASA DAN OTOMATA

TEORI BAHASA DAN OTOMATA TEORI BAHASA DAN OTOMATA Disusun Oleh : Hartono BAB I PENDAHULUAN Teori Bahasa Teori bahasa membicarakan bahasa formal (formal language), terutama untuk kepentingan perancangan kompilator (compiler) dan

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

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP) Mata Kuliah : Teknik Kompilasi Bobot Mata Kuliah : 3 Sks GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP) Deskripsi Mata Kuliah : Kompetensi Dasar, Indikator, Analisis Leksikal, Anlisis Sintati, Intermidiate

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

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

SATUAN ACARA PERKULIAHAN (SAP)

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

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

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

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

SATUAN ACARA PERKULIAHAN (SAP) MATA KULIAH PENGANTAR TEKNIK KOMPILASI

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

Amir Hamzah AKPRIND PRESS 2009

Amir Hamzah AKPRIND PRESS 2009 1 TEORI BAHASA DAN OTOMATA Amir Hamzah AKPRIND PRESS 2009 1 TEORI BAHASA DAN OTOMATA Amir Hamzah JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INDUSTRI INSTITUT SAINS DAN TEKNOLOGI AKPRIND YOGYAKARTA AKPRIND

Lebih terperinci

MODUL TEORI BAHASA DAN AUTOMATA

MODUL TEORI BAHASA DAN AUTOMATA MODUL TEORI BAHASA DAN AUTOMATA DISUSUN OLEH : Rizqia Cahyaning tyas 997234A 35979 SEKOLAH TINGGI TEKNIK PLN TEKNIK INFORMATIKA JAKARTA 22 SATUAN ACARA PENGAJARAN (SAP) MATA KULIAH/ SEMSTER : Otomata dan

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

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

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

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 : Teori Bahasa Automata : TI 2A & TI 2B : 3 SKS : III : Fathiah, ST. M. Eng.

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

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

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

Lecture Notes Teori Bahasa dan Automata

Lecture Notes Teori Bahasa dan Automata Pumping Lemma RL (edisi 2) 1/5 Lecture Notes Teori Bahasa dan Automata Pumping Lemma Untuk Regular Language Thompson Susabda Ngoen Revisi 1 Hopcroft mengatakan regular language dapat dideskripsikan dengan

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

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

PENGANTAR OTOMATA DAN KOMPILASI

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

BAB V CONTEXT FREE GRAMMAR DAN PUSH DOWN AUTOMATA

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

LANGUAGES AND TRANSLATOR

LANGUAGES AND TRANSLATOR Algoritma dan Pemrograman 1C Konsep Bahasa Pemrograman LANGUAGES AND TRANSLATOR Disusun kembali oleh : Henny Medyawati, Universitas Gunadarma Sumber: Pittman, Thomas dan James Petters, 1992 The Art of

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

Lecture Notes Teori Bahasa dan Automata

Lecture Notes Teori Bahasa dan Automata Penyederhanaan CFG (edisi 1) 1/8 Lecture Notes Teori Bahasa dan Automata Penyederhanaan Context Free Grammar Thompson Susabda Ngoen Pendahuluan Context Free Grammar (CFG) terdiri atas sejumlah production

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

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

Teori Bahasa Formal dan Automata

Teori Bahasa Formal dan Automata Teori Bahasa Formal dan Automata Pertemuan 12 Semester Genap T.A. 2017/2018 Rahman Indra Kesuma, S.Kom., M.Cs. T. Informatika - ITERA POKOK BAHASAN Penghilangan ε-production Penghilangan Unit Production

Lebih terperinci

Aplikasi Simulator Mesin Turing Pita Tunggal

Aplikasi Simulator Mesin Turing Pita Tunggal Aplikasi Simulator Mesin Turing Pita Tunggal Nuludin Saepudin / NIM 23515063 Program Magister Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132,

Lebih terperinci

BAB II TINJAUAN PUSTAKA. konsep, fakta, termasuk simbol simbol serta aturan agar mempunyai makna.

BAB II TINJAUAN PUSTAKA. konsep, fakta, termasuk simbol simbol serta aturan agar mempunyai makna. BAB II TINJAUAN PUSTAKA 2.1 Teori Bahasa dan Automata Bahasa merupakan suatu sistem yang meliputi pengekspresian gagasan, konsep, fakta, termasuk simbol simbol serta aturan agar mempunyai makna. Automata

Lebih terperinci

TEKNIK KOMPILASI. Firrar Utdirartatmo

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

Tanggal Revisi : Tanggal : SATUAN ACARA PERKULIAHAN

Tanggal Revisi : Tanggal : SATUAN ACARA PERKULIAHAN Versi : Revisi : Tanggal Revisi : Tanggal : SATUAN ACARA PERKULIAHAN Fakultas/ Jurusan/ Program Studi : Teknologi Industri/ Teknik Informatika/ Teknik Informatika Kode Matakuliah : 52302031 Nama Matakuliah

Lebih terperinci

TEORI BAHASA & OPERASI MATEMATIS (2)

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

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

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

RENCANA PEMBELAJARAN SEMESTER (Kelas Teori)

RENCANA 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 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

TEORI BAHASA & AUTOMATA

TEORI BAHASA & AUTOMATA TEORI BAHASA & AUTOMATA Dosen: Dadang mulyana Alamat email untuk tugas: dadangstmik@gmail.com 1 Cara pengiriman tugas: Dalam subjek email tuliskan: Instansi_kelas_nama_matakuliah_jenistugas Contoh: Ahmad

Lebih terperinci

Disusun oleh: Rina Dewi Indah Sari, S.Kom

Disusun oleh: Rina Dewi Indah Sari, S.Kom Disusun oleh: Rina Dewi Indah Sari, S.Kom Kata Pengantar Teori bahasa dan automata merupakan salah satu mata kuliah yang wajib di jurusan-jurusan informatika maupun ilmu komputer. Salah satunya pada STMIK

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

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

MODUL 1: PENGANTAR TEORI BAHASA

MODUL 1: PENGANTAR TEORI BAHASA MODUL 1: PENGANTAR TEORI BAHASA Pengantar Automata dan Bahasa Teori Pendukung Konsep Bahasa Slide 1 dari 38 PENGANTAR AUTOMATA DAN BAHASA Obyektif membahas model-model komputasi sebagai mesin abstraks

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

Penyederhanaan Tata Bahasa Bebas Konteks dalam Bentuk Normal Chomsky Menggunakan PHP

Penyederhanaan Tata Bahasa Bebas Konteks dalam Bentuk Normal Chomsky Menggunakan PHP Penyederhanaan Tata Bahasa Bebas Konteks dalam Bentuk Normal Chomsky Menggunakan PHP 1 Rico Andrian, 2 Wamiliana dan 3 Ismail Indra Pratama 1 Jurusan Ilmu Komputer FMIPA Unila 3 Jurusan Ilmu Komputer FMIPA

Lebih terperinci

FIRDAUS SOLIHIN FAKULTAS TEKNIK UNIVERSITAS TRUNOJOYO

FIRDAUS SOLIHIN FAKULTAS TEKNIK UNIVERSITAS TRUNOJOYO BAHASA FORMAL AUTOMATA FIRDAUS SOLIHIN FAKULTAS TEKNIK UNIVERSITAS TRUNOJOYO MATERI PENGANTAR AUTOMATA REGULAR EXSPRESSION (RE) FINITE AUTOMATA (FA) TRANSITION GRAPH (TG) THEOREMA KLEENE CONTEXT FREE GRAMMAR

Lebih terperinci

APLIKASI PROGRAM DINAMIS DALAM ALGORITMA COCKE- YOUNGER -KASAMI (CYK)

APLIKASI PROGRAM DINAMIS DALAM ALGORITMA COCKE- YOUNGER -KASAMI (CYK) APLIKASI PROGRAM DINAMIS DALAM ALGORITMA COCKE- YOUNGER -KASAMI (CYK) Inas Luthfi 1) NIM 13506019 1) Jurusan Teknik Informatika ITB, Jalan Ganesha 10 Bandung Indonesia 40132 email: if16019@students.if.itb.ac.id

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

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

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

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

BAHASA BEBAS KONTEKS UNTUK KOMPLEMEN DARI STRING BERULANG CONTEXT FREE LANGUAGE FOR COMPLEMENT OF REPEATED STRING

BAHASA BEBAS KONTEKS UNTUK KOMPLEMEN DARI STRING BERULANG CONTEXT FREE LANGUAGE FOR COMPLEMENT OF REPEATED STRING BAHASA BEBAS KONTEKS UNTUK KOMPLEMEN DARI STRING BERULANG Suharni S., Armin Lawi dan Loeky Haryanto Jurusan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Hasanuddin (UNHAS) Jl. Perintis

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