Anda di halaman 1dari 17

OTAMATA dan PENGANTAR KOMPILASI

KOMPONEN TATA BAHASA FORMAL

NAMA KELOMPOK
1. 2. 3. 4. 5. 6. Eko Ariestyo (10120014) Aditya Anugrah P (10120055) Arif Ramadhan (10120058) Satya Narendra (10120059) Suwanto Efendi (10120094) Rostintya Darmaya P (10120098)

Program Studi Teknik Informatika Falkultas Teknik Universitas Wijaya Kusuma Surabaya 2012

Apa itu Otomata dan Pengantar Kompilasi ?


Otomata adalah MODEL. Model dari sistem apapun yang akan kita komputasikan.
Sementara, Kompilasi adalah ilmu yang mempelajari bagaimana kita dapat merancang & membangun bahasa pemrograman.

TATA BAHASA FORMAL


Bahasa dapat digambarkan sebagai suatu tatatanan yang membentuk hirarki Bahasa yang menggambarkan suatu urutan yang tertata secara valid disebut dengan formal languange

Konsep-Konsep Tata Bahasa


Karakter String Kata Token Kalimat Bahasa

Karakter

String
Strings : urutan simbol terbatas (sequence finite symbol) contoh : aba, ab12z, axy operasi yang dapat dilakukan pada strings : substrings, concatenation , dll panjang string adalah jumlah simbol di dalam string bukan pada alpabet dan pengulangan kemunculan simbol dihitung. Panjang string dilambangkan |w| Contoh: || = 0 |a| = 1 |aa| = 2

Kata
Kata adalah komponen terkecil kalimat yang tidak bisa dipisahkan lagi. Kata terdiri atas beberapa karakter. Dalam bahasa pemrograman, kata dikenal sebagai token

Token
Token adalah symbol terminal pada teori bahasa. Token merupakan bagian hasil dari pemecahan sumber program yaitu penerjemahan lexeme pada saat melakukan scanner. Lexeme adalah string yang merupakan masukan dari analisis Leksikal. Lexeme adalah kelompok karakter yang membentuk sebuah token. Token tertentu harus memenuhi aturan yang disebut Pattern. Token merupakan sekumpulan karakter yang sesuai dengan pattern-nya.
TOKEN
Const If Relation Id Num

Contoh Lexeme
Const If <, < =, =, < >, > =, > Phi, count, D2 3.14 , 0.602E23

Pattern
Const If < or < = or = or < > or > = or > Letter(letter|digit)* Digit+(.digit+) ? (E( + | - ) ? Digit +) ?

Kalimat
Kalimat adalah string yang tersusun atas simbol-simbol terminal. Kalimat adalah merupakan sentensial, sebaliknya belum tentu Dalam bahasa pemrograman, kalimat dikenal sebagai ekspresi

Bahasa
Bahasa adalah struktur yang dikendalikan sekumpulan aturan tertentu, semacam mesin untuk memproduksi makna. Akan tetapi seperti setiap mesin hanya terdapat kemungkinan terbatas bagi setiap orang dalam menggunakannya. Dalam bahasa disediakan pembendaharaan kata atau tanda (vocabulary), serta perangkat aturan bahasa (grammar, sintaks) yang harus dipatuhi jika hendak menghasilkan sebuah ekspresi yang bermakna. Teori Bahasa adalah konsep-konsep pada "string alpabet dalam penyambungan karakter-karakter alpabet untuk membentuk suatu makna (bahasa)

Terminal
Pengertian terminal berasal dari kata terminate (berakhir), maksudnya derivasi berakhir jika sentensial yang dihasilkan adalah sebuah kalimat (yang tersusun atas simbol-simbol terminal itu). Simbol-simbol berikut adalah simbol terminal: huruf kecil, misalnya : a, b, c, 0, 1, .. simbol operator, misalnya : +, , dan simbol tanda baca, misalnya : (, ), dan ; string yang tercetak tebal, misalnya : if, then, dan else. Simbol terminal sudah tidak bisa diturunkan lagi, dan dinyatakan dengan huruf kecil.

Non Terminal
Pengertian non terminal berasal dari kata not terminate (belum/tidak berakhir), maksudnya derivasi belum/tidak berakhir jika sentensial yang dihasilkan mengandung simbol non terminal. Simbol-simbol berikut adalah simbol non terminal : huruf besar, misalnya : A, B, C huruf S sebagai simbol awal string yang tercetak miring, misalnya : expr Simbol variabel / non terminal adalah simbol yang masih bisa diturunkan lagi dan dinyatakan dengan huruf besar.

Produksi
Konsep Terminal (T) dan Non Terminal (NT) direpresentasikan dalam produksi Sebuah produksi dilambangkan sebagai , artinya : ( alpha menghasilkan betha atau alpha menurunkan betha. Simbol dalam produksi berbentuk disebut ruas kiri produksi, sedangkan simbol disebut ruas kanan produksi.

Derivasi
Derivasi adalah sebuah proses dimana suatu himpunan produksi akan diturunkan / dipilah-pilah dengan melakukan sederetan produksi sehingga membentuk untai terminal.
Derivasi adalah proses pembentukan sebuah kalimat atau sentensial. Sebuah derivasi dilambangkan sebagai : .

Kesimpulan
Teori Otomata dan bahasa formal, berkaitan dalam hal pembangkitan kalimat / generation yaitu, menghasilkan semua kalimat dalam bahasa berdasarkan aturan yang dimilikinya. Dan pengenalan kalimat / recognition yaitu, menentukan suatu string (kalimat) termasuk sebagai salah satu anggota himpunan.

Anda mungkin juga menyukai