Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

1 Penguraian Bawah-Atas (Bottom-up Parsing) Bentuk umumnya  penguraian shift-reduksi (shift-reduce parsing). Yang mudah diimplementasikan  penguraian.

Presentasi serupa


Presentasi berjudul: "1 Penguraian Bawah-Atas (Bottom-up Parsing) Bentuk umumnya  penguraian shift-reduksi (shift-reduce parsing). Yang mudah diimplementasikan  penguraian."— Transcript presentasi:

1 1 Penguraian Bawah-Atas (Bottom-up Parsing) Bentuk umumnya  penguraian shift-reduksi (shift-reduce parsing). Yang mudah diimplementasikan  penguraian presedensi operator (operator precedence parsing). Bentuk yang lebih umum  penguraian LR. Penguraian shift-reduksi bertujuan membentuk suatu pohon urai (parse tree) untuk suatu string input, dimulai dari daun (bawah) lalu ke akarnya (atas). Proses ini dapat dianggap sebagai reduksi string w menjadi simbol awal suatu grammar. Contoh : S  aABc A  Abc | b B  d abbcdc dapat direduksi menjadi S dengan langkah-langkah : abbcdc aAbcdc (pakai A  b, ganti yang paling kiri) aAdc (pakai A  Abc, ganti A) aABc (pakai B  d) S

2 2 Penguraian Bawah-Atas (Bottom- up Parsing) (2) Right most derivasinya adalah langkah kebalikan proses tadi : S  aABc  aAdc  aAbcdc abbcdc Pada pereduksian, untuk memilih mana yang harus diganti harus memakai handel. Handel dari suatu bentuk sentensial-kanan  adalah suatu produksi A  dan suatu posisi dari  dimana string bisa ditemukan dan diganti oleh A untuk menghasilkan bentuk sentensial-kanan sebelumnya dengan cara derivasi right-most untuk . Jadi S  aAw  aB, maka A  merupakan handel dari w. A  b adalah handel dari abbcdc A  Abc adalah handel dari aAbcdc Kadang-kadang sisi kanan dari handel tersebut yang lebih sering disebut handel. Reduksi  menjadi A dapat dianggap sebagai “pruning the handle”; menghapus anak dari A dalam proses urai.

3 3 Penguraian Bawah-Atas (Bottom-up Parsing) (3) Contoh lagi : (1) E  E + E (2) E  E * E (3) E  ( E ) (4) E  id Salah satu derivasi right-most untuk id 1 + id 2 * id 3 adalah : E  E + E  E + E * E  E + E * id 3  E + id 2 * id 3  id 1 + id 2 * id 3

4 4 Penguraian Bawah-Atas (Bottom-up Parsing) (4) Proses reduksinya : Struktur data/implementasi pengurian shift-reduksi adalah dengan memakai stack untuk menyimpan simbol grammar. Dipakai juga suatu buffer untuk menyimpan string w yang akan diurai. $ sebagai tanda dasar stack dan akhir input. Pada awalnya : stack input $ w$

5 5 Penguraian Bawah-Atas (Bottom- up Parsing) (5) Lalu nol atau lebih simbol input dipindahkan (shift) ke stack, sampai suatu handel  berada di puncak stack. Handel lalu direduksi. Proses diulang sampai ditemukan error atau berhasil. stack input $S $ Aksi-aksi dalam pengurian shift-reduksi : 1.Shift, simbol input berikutnya dipindahkan ke puncak stack. 2.Reduksi, parser tahu handel ada di puncak, lalu handel direduksi 3.Accept, proses selesai, tak ada error. 4.Error, error ditemukan. Contoh : id 1 + id 2 * id 3,

6 6 Penguraian Bawah-Atas (Bottom-up Parsing) (5)


Download ppt "1 Penguraian Bawah-Atas (Bottom-up Parsing) Bentuk umumnya  penguraian shift-reduksi (shift-reduce parsing). Yang mudah diimplementasikan  penguraian."

Presentasi serupa


Iklan oleh Google