Skip to main content

Analisis Sintaksis

 Analisis Sintaksis (Parsing)

- Parsing merupakan tahapan yang berguna untuk memeriksa urutan kemunculan token.

- Parsing adalah konsturksi atau pembentukan Pohon Sintaks untuk suatu kalimat (ekspresi).

- Pohon Sintaks menggambarkan bagaimana memperoleh suatu string/untai (menurunkan simbol variabel menjadi simbol terminal).

- Bila terdapat lebih dari satu pohon sintaks untuk sebuah grammar maka dikatakan grammar tersebut Ambiguous.


Pengertian Pohon (1)

Pohon (tree) adalah suatu graph terhubung tidak sirkuler, yang memiliki satu simpul (node)/vertex disebut akar (root) dan memiliki lintasan ke setiap simpul.


Pengertian Pohon (2)

Pohon sintaks/pohon penurunan berguna untuk menggambarkan bagaimana memperoleh suatu string (untai) dengan cara menurunkan simbol-simbol variabel menjadi simbol-simbol terminal.

- Mendapatkan untai

- Setiap simbol variabel akan diturunkan menjadi simbol-simbol terminalnya.


Contoh Pembentukan Pohon Penurunan

Co:/ Terdapat tata bahasa bebas konteks dengan aturan produksi sbb:

S→ AB

A → aA│a

B → bB │ b

Akan digambarkan pohon penurunan untuk memperoleh untai “aabbb”.Pada pohon tersebut simbol awal akan menjadi akar (root).

Bentuk Pohon Sintaks nya


Metode Parsing

Dua cara melakukan validitas sintaks dengan parsing yaitu :

1.TOP DOWN Parsing : melakukan penelusuran dari root/puncak menuju leaf/daun (S – T)

Meliputi Brute Force dan Recursive Descent Parser

2.BOTTOM UP Parsing : melakukan penelusuran dari leaf menuju root/puncak.

Detail metode parsing

Comments

Popular posts from this blog

IMPLEMENTASI SCANNER

  Implementasi Scanner Scanner biasanya diimplementasikan sebagai sebuah prosedur yang dipanggil oleh Parser. Prosedur Scan sederhana: Didefinisikan dulu Procedure GetChar untuk mengambil sebuah karakter dari file input. Procedure GetChar; begin Read (FileInput, Kar); end; Implementasi Scan Sederhana Dimana : FileInput: text, Kar: character Pada scanner kita akan maju satu-satu per karakter untuk mendapatkan token. Selanjutnya kita akan buat Procedure Scan. Procedure Scan Begin While Kar=‘ ‘ do GetChar {selama ketemu spasi maju terus} repeat

TRANSLATOR

  TRANSLATOR Translator  adalah suatu program atau metode dimana program tersebut mengambil input sebuah program lain yang ditulis pada suatu bahasa program (source language) ke bahasa lain (object on target language). Macam – macam translator antara lain : interpreter, compiler, dan assembler.   Apa sih pengertian dari interpreter, compiler, dan assembler beserta perbedaan nya ??? OK saya akan mencoba menjelaskan nya :)   A. Pengertian Compiler Compiler  adalah program sistem yang digunakan sebagai alat bantu dalam pemrogaman.Perangkat lunak yang melakukan proses penterjemahan code (yang dibuat programmer) ke dalam bahasa mesin. Hasil dari terjemahan ini adalah bahasa mesin. Pada beberapa compiler, output berupa bahasa mesin dilaksanakan dengan proses assembler yang berbeda. Contoh bahasa pemrograman yang menggunakan compiler adalah Pascal, C, Basic, dll. B. Pengertian Interpreter Interpreter  adalah perangkat lunak yang mampu mengeksekus...