Konsep dan Notasi Bahasa

Slides:



Advertisements
Presentasi serupa
Teori Bahasa dan Automata
Advertisements

Teori Bahasa dan Automata
SUATU FINITE STATE AUTOMATA
Pengantar Teknik Kompilasi
TEORI BAHASA & OTOMATA (KONSEP & NOTASI BAHASA)
Procedures, Functions and Methods
BAB II FINITE STATE AUTOMATA.
Teori Bahasa & OTOMATA.
BAB II FINITE STATE AUTOMATA.
KONSEP dan NOTASI BAHASA
Bahasa Pemrograman Tingkat Tinggi
PUSH DOWN AUTOMATA & MESIN TURING
Yenni astuti, S.T., M.Eng Teori Bahasa Yenni astuti, S.T., M.Eng
TEORI BAHASA DAN AUTOMATA
PENDAHULUAN.
BAB II FINITE STATE AUTOMATA.
BAB II FINITE STATE AUTOMATA.
Teori Matematika terhadap materi teori bahasa dan automata
Pertemuan 3 FINITE AUTOMATA
BAB 13 PUSH DOWN AUTOMATA.
Teori Bahasa & OTOMATA.
Teori Bahasa dan Automata
KONSEP GRAMMAR & HIRARKI CHOMSKY
TEORI BAHASA DAN AUTOMATA
FINITE STATE AUTOMATA (FSA)
Teori-Bahasa-dan-Otomata
OTOMATA DAN TEORI BAHASA FORMAL
FINITE STATE AUTOMATA (FSA)
KONSEP dan NOTASI BAHASA
Teori-Bahasa-dan-Otomata
TEORI BAHASA DAN AUTOMATA TATA BAHASA LEVEL BAHASA
2. Review Teori Bahasa Formal dan Otomata
KONSEP dan NOTASI BAHASA
PENDAHULUAN.
TEORI BAHASA DAN OTOMATA
ATURAN PRODUKSI TATA BAHASA REGULER
OTOMATA DAN TEORI BAHASA FORMAL
OTOMATA DAN TEORI BAHASA FORMAL
By : Lisda Juliana Pangaribuan
Pengantar Teknik Kompilasi
Teori-Bahasa-dan-Otomata
GRAMMER ATAU TATA BAHASA
BAB II FINITE STATE AUTOMATA.
Teori-Bahasa-dan-Otomata
Pengantar Teknik Kompilasi
2. Review Teori Bahasa Formal dan Otomata
Finite State Automata ♦ model matematika yang dapat menerima input dan mengeluarkan output ♦ Memiliki state yang berhingga banyaknya dan dapat berpindah.
MATERI PERKULIAHAN TEKNIK KOMPILASI
MATERI PERKULIAHAN TEKNIK KOMPILASI
ANALISIS LEKSIKAL (Scanner)
Pengantar Teknik Kompilasi
Aturan Produksi Untuk Suatu Finite State Automata
ALGORITMA & PEMROGRAMAN 1C
MATERI PERKULIAHAN TEKNIK KOMPILASI
Pengantar Teknik Kompilasi
Tata Bahasa Kelas Tata Bahasa
Erwin Hidayat (M ) UTeM || 2010
Pengantar Teknik Kompilasi
KONSEP dan NOTASI BAHASA
Pengantar Teknik Kompilasi
Pertemuan4.
Kuis 1 Tekom MDS 9 September 2015.
Pengenalan Pola secara sintaktis (PPSint)
TEORI BAHASA DAN OTOMATA. Pengenalan Teori Bahasa dan Otomata Teori bahasa dan otomata merupakan mata kuliah yang cenderung bersifat teoritis, tidak memuat.
Pengantar Teknik Kompilasi
KONSEP dan NOTASI BAHASA
Pengantar Teknik Kompilasi
Grammar dan Bahasa Automata
Chomsky Normal Form (CNF) / Bentuk Normal Chomsky (BNC)
Pengantar Teknik Kompilasi
Transcript presentasi:

Konsep dan Notasi Bahasa TEKNIK KOMPILASI Konsep dan Notasi Bahasa Hirarki Chomsky Diagram Keadaan Notasi BNF Diagram Sintaks

Hirarki Chomsky Tata bahasa (grammar) bisa didefenisikan secara formal sebagai kumpulan dari himpunan - himpunan variabel, simbol-simbol terminal, simbol awal, yang dibatasi oleh aturan- aturan produksi. Pada tahun 1959 seorang ahli bernama Noam Chomsky melakukan penggolangan tingkatan bahasa menjadi empat, yang disebut dengan Hirarki Chomsky. Penggolangan tersebut dapat dilihat pada tabel berikut.

Batasan Atasan Produksi Hirarki Chomsky Bahasa Mesin Otomatis Batasan Atasan Produksi Regular/ Tipe 3 Finite State Automata (FSA) meliputi Deterministic Finite Automata (DFA) & Nondeterministic Finite Automata (NFA) α adalah sebuah simbol variabel β maksimal memiliki sebuah simbol variabel yang bila ada terletak di posisi paling kanan. Bebas Konteks/ Context Free/ Tipe 2 Push Down Automata α Berupa sebuah simbol variabel Context Sensitive/ Tipe 1 Linier Bounded Automata |α| < |β| Unrestricted/ Phase Stucture/ Natural Languange/ Tipe 0 Mesin Turing Tidak ada batasan

Hirarki Chomsky Finite Stase Automata/ Finite Automata adalah model matematika dari sebuah sistem dengan input dan output diskrit, yang terdiri dari sejumlah berhingga state dan fungsi – fungsi yang menyajikan perubahan state. Deterministic Finite State Automata adalah finite state automata dimana setiap state ada satu fungsi transaksi untuk satu simbol input. Non Deterministik Finite State Automata adalah finite state automata yang memperbolehkan 0,1 atau lebih busur berlabel satu simbol input yang sama.

Hirarki Chomsky Disini semua aturan produksi dinyatakan dalam bentuk “a  b” (dibaca: a menghasilkan b, atau a menurunkan b) dimana simbol a pada ruas kiri menyataka aturan produksi, sedangkan simbol b pada ruas kanan menyatakan hasil produksi. Simbol-simbol tersebut bisa berupa simbol terminal atau sismbol non-terminal/ variabel. Simbol non-terminal/ variable adalah simbol yang masih dapat diturunkan. Sedangkan simbol terminal adalah simbol yang tidak dapat diturunkan lagi. Biasanya simbol non-terminal dinyatakan dengan huruf kapital sedangkan simbol terminal dinyatakan dengan huruf kecil.

Hirarki Chomsky Contoh produksi : T  a Dibaca: T menghasilkan a E  T | T+E Dibaca: E menghasilkan T atau E menghasilkan T+E Simbol ‘|’ menyatakan ‘atau’ biasa digunakan untuk mempersingkat penulisan aturan produksi yang mempunyai ruas kiri yang sama. Contoh E  T E T+E dapat disingkat menjadi E T|T+E

Hirarki Chomsky Bahasa manusia termasuk kedalam grammer (tata bahasa) Tipe 0/ Unrestricted, dimana tidak ada batasan pada aturan produksinya. Misalkan saja : Abc De Pada bahasa Context Sensitive, Panjang string pada ruas kiri < panjang ruas kanan (|α < |β|). Contoh aturan produksi yang Context Sensitive : Ab  Def CD  eF

Hirarki Chomsky Perhatikan aturan produksi seperti : S  € Diketahui |S|=1, sedangkan |€| = 0, menurut aturan Context Sensitive aturan produksi itu tidak diperkenalkan, tetapi di sini kita buat suatu pengecualian, sehingga S€ dianggap memenuhi Context Sensitive grammar. Pada bahasa bebas konteks, batasan bertambah lagi dengan ruas kiri haruslah tepat satu simbol variabel. Misanya: BCDeFg DBcDe

Hirarki Chomsky Bahasa bebass konteks menjadi dasar dalam pembentukan suatu parser/ proses analisis sintaksis. Bagian sintaks dalam suatu kompilator kebanyakan didefenisikan dalam tata bahasa bebas konteks, yang dideskripsikan secara formal dengan notasi BNF (Backus Naur Form atau Backus Normal Form). Pada bahasa regular batasannya bertambah dengan ruas kanan maksimal memiliki sebuah simbol variabel yang terletak dipaling kanan. Artinya bisa sebuah simbol terminal saja dalam jumlah tidak dibatasi, tetapi bila terdapat simbol variabel, maka simbol variabel hanya berjumlah 1 dan terletak diposisi paling kanan.

Hirarki Chomsky Misalnya: A e Aefg AefgH CD Ada beberapa hal yang harus diperhatikan dalam pembuatan aturan produksi dan tidak boleh dilakukan: €  Aabd bukan aturan produksi yang legal, karena simbol € tidak boleh berada pada ruas kiri.

Hirarki Chomsky 2. Aturan produksi yang ruas kirinya hanya memuat simbol terminal saja, seperti : a bd ab bd Bukan aturan produksi yang legal (untuk untestricted grammar sekalipun), karena ruas kiri harus juga memuat simbol yang bisa diturunkan, sementara contoh diatas ruas kiri hanya terdiri dari simbol terminal saja padahal sasuai defenisinya simbol terminal sudah tidak bisa diturunkan lagi. Berbeda seperti dengan aturan produksi yang benar seperti: Aa  bd

Diagram Keadaan Diagram keadaan (State Transition Diagram) digunakan untuk mendapatkan token (token adalah simbol terminal pada teori bahasa ), yaitu melakukan analisis leksikal terhadap program sumber. contoh : Suatu bahasa memiliki himpunan simbol terminal/ token sebagai berikut : t_PLUS, t_MIN, t_ID, t_INT. Token t_ID bisa berupa nama atau keyword (kata kunci yang sudah didefenisikan oleh suatu bahasa). Misal terdapat pada statment : Var jumlah : integer

Diagram Keadaan Maka VAR dan integer adalah keyword, jumlah adalah sebuah nama yang dideklarassikan sendiri oleh program. Token t_ID harus diawali dengan karakter huruf (A-Z, a-z) dan bisa diikuti digit (0-9) atau huruf. Token t_INT harus diawali dengan digit dan bisa diikuti dengan digit. Blank merupakan bagian program sumber yang diabaikan saja, misalkan spasi kosong.

Diagram Keadaan Blank Huruf, digit Huruf Digit + - S t_ID t_INT t_MIN t_PLUS

Notasi BNF Notasi BNF( Backus Naur Form/ Backus Normal Form) merupakan notassi yang biasa digunakan untuk mendeskripsikan sintaks suatu bahasa. Aturan-aturan produksi dapat dinyatakan dalam bentuk BNF. Notasi BNF telah banyak dipakai untuk melakukan defenisi formal bahasa pemrograman. Beberapa simbol yang dipakai dalam notassi BNF.

Notasi BNF ::= | <> {} Simbol Keterangan Identik dengan simbol  pada antara produksi | Item dengan simbol serupa pada aturan produksi <> Mengapit simbol variabel/ non terminal {} Pengulangan 0 sampai n kali

Notasi BNF Contoh : Terdapat aturan produksi : ET|T+E|T-E,Tα Notassi BNF E ::= <T>|<T>+<E>|<T>-<E>,T ::= α

Diagram Sintaks Diagram sintaks merupakan alat bantu dalam pembentukan parser/ analisis sintaks. Notasi yang terdapat pada diagram sintaks : Persegi panjang melambangkan simbol variabel/ non terminal. Lingkaran melambangkan simbol terminal Contoh 1: T T F*T|F/T|F Gambar Diagram Sintaks Contoh 1 F * /

Gambar : Diagram Sintaks Sontoh 2 Contoh 2: Biasanya diagram sintaks digunakan untuk memperoleh gambaran dari suatu notasi BNF. Misalkan notasi BNF untuk Block : <blok> ::= t+BEGIN <statement>{t_SEMICOL<statement>}t_END Gambar : Diagram Sintaks Sontoh 2 Begin Statement End ;