• Tidak ada hasil yang ditemukan

Automata Hingga Deterministik (AHD)

N/A
N/A
Protected

Academic year: 2018

Membagikan "Automata Hingga Deterministik (AHD)"

Copied!
23
0
0

Teks penuh

(1)

Automata Hingga Deterministik

(AHD)

By

(2)

Komponen sebuah Kompilator

Program Subjek

Penganalisis Leksikal (Scanner)

Penganalisis Sintaks (Parser)

Penganalisis

Semantik Pembentuk Kode Pengoptimal Kode

TABEL

Program Objek

ANALISIS

SINTESIS

(3)

Proses kompilasi dikelompokkan menjadi :

Analisa

: program sumber dibagi-bagi dan

dibentuk menjadi bentuk antara

(

intermediate presentation

)

(4)

Token

(5)

Scanning

Scanning termasuk ke dalam

analisis lexical

, yaitu

proses untuk mengidentifikasi satuan terkecil dari

Bahasa, yang disebut

Token / Terminal / Daun

(identifier, keyword,label, operator aritmetika dan

assignment, operator relasional, tanda baca, dsb)

Aspek dalam Scanner :

Bagaimana bentuk dan penyajian Token. Metode yang

digunakan

Grammar Regular

dan

Ekspresi Regular

Pengenalan Token. Metode yang digunakan

Automata

(6)

Scanning (cont.)

Scanner berinteraksi dengan Parser, dengan cara :

Scanner mengolah Program Source secara terpisah

sebagai satu fase, dimana token disimpan dalam

sebuah tabel sebelum Parser bekerja

Scanner berinteraksi denga Parser, dimana scanner

dipanggil oleh parser bila token dalam program

source diperlukan

(7)

Automata Hingga (AH)

Automata Hinga (AH) / Finite state Automaton (FA) adalah suatu

struktur abstrak yang didefinisikan, terdiri dari :

1. Himpunan Hingga A berisi simbol Input

2. Himpunan Hingga S berisi State (internal state) 3. Himpunan Hingga Z berisi simbol output

4. Sebuah fungsi f: S x Z  S, disebut fungsi next state 5. Sebuah fungsi g: S x A Z, disebut fungsi output

AH berhubungan dengan Regular Grammar

Jenis AH :

1. AH Determinstik (AHD)

2. AH Non Deterministik (AHN)

(8)

Automata Hingga Deterministik (AHD)

Automata Hinga Deterministik (AHD) didefinisikan

dengan 5 tupel

1.

Himpunan Hingga internal state (S)

2.

Himpunan Hingga simbol input (V)

3.

Sebuah fungsi f: S x V

S ; merupakan fungsi next state

4.

State awal (q

0

S)

5.

Himpunan hingga state penerima

S

AHD sering digambarkan dengan cara :

Table Transisi State

Transisi Digraph

(9)

Automata Hingga Deterministik (AHD)

(cont.)

Contoh :

Diketahui AHD dengan 2 simbol input dan 3 state,

1.

V = { a,b}

2.

S = { q0, q1, q2)

3.

T = {q0, q1} state penerima

4.

q0 sebagai state awal

5.

Fungsi next state didefinisikan f:(S,V)

input f

a b

(10)

Automata Hingga Deterministik (AHD)

(cont.)

q2

q0

q1

a

a

b

b

a

b

Periksalah string berikut :

1. aba

q0

q0

q1

q0

(diterima)

2. aabbaa

q0

q0

q0

q1

q2

q2

q2

(ditolak, state penerima yang ditentukan adalah q0 dan q1, bukan q2)

(11)

Automata Hingga Deterministik (AHD)

(cont.)

Contoh :

Identifikasi Integer String

Grammar : <integer> ::= <digit> | <integer><digit>

input state

d  d

START INTEGER -INTEGER INTEGER OUT

OUT

(Accept)

Start d Integer delimeters OUT

(12)

Automata Hingga Deterministik (AHD)

(cont.)

Contoh :

Identifikasi Identifier String

<identifier> ::= <letter>|<identifier><letter>|<identifier><digit>

Start <letter> Identifier

<letter>

<digit>

Error

<digit>

(13)

Parsing

Parsing adalah konsturksi atau pembentukan

Pohon Sintaks

untuk suatu kalimat (ekspresi)

Bila terdapat lebih dari satu pohon sintaks untuk sebuah grammar

maka dikatakan grammar tersebut

Ambiguous

.

Dua cara melakukan validitas sintaks dengan parsing :

(14)

Parsing Top Down

Jika

adalah input string, maka derivasi dari Top Down Parse

dapat ditunjukkan sebagai berikut :

S

Parse Tree untuk Top Down Parsing selalu dimulai dari sebelah

kiri

S

NT11 NT12

…….

NT1n

NT21 t

1

2

3

(15)

Parsing Top Down

(cont.)

Contoh : Parsing Top Down untuk identifier x2

Derivasinya :

<identifier>  <identifier><digit> <letter><digit>  x <digit>  x2

a. <identifier>

<identifier> <digit>

(16)

Parsing Top Down

(cont.)

Contoh : ekspresi a + b * c

grammar : E ::= T + E | T T ::= V * E | V

V ::= <id>

Prediction Prediction Sentential Form ET+E

TV V<id> ET TV*T V <id> T V V <id>

T+E V+E <id>+E <id>+T <id>+V*T <id>+<id>*T <id>+<id>*V <id>+<id>*<id> E

T + E

V

id

T

V * T

id V

id

(17)

Parsing Bottom Up

Parsing Bottom Up membangun pohon sintaks melalui urutan

simbol yang direduksi, atau dimulai dengan sebuah string hingga

mencapai simbol start Grammar

Contoh : diketahui identifier x2, dengan parsing bottom up

menjadi :

x2

(18)

Relasi Preseden dan Pemakaiannya

Teknik parsing pada metode Bottom-Up dilakukan dengan

mencari berulang-ulang,

handle

(

leftmost simple phrase

) u

dari bentuk sentensial saat itu dan mereduksinya menjadi suatu

nonterminal U dnegan memakai reduksi U

u

Jadi tujuan utamanya adalah mencari

Handle

dari sebuah

bentuk sentensial yaitu simple phrase terkiri (leftmost) dari

bentuk sentensial tersebut.

Masalah tersebut diselesaikan dengan

Grammar Preseden

(19)

Misal, R dan S berada dalam suatu grammar G. Beberapa bentuk

sentensial dapat dibentuk dari simbol R dan G tersebut (…RG…..). Ada tiga kemungkinan yang timbul dalam handle yang dibuat dari R dan S.

R adalah bagian dari suatu handle tapi S tidak (R  S)

 dikatakan R > S (R memiliki Preseden atas S).

 R harus merupakan ekor dari beberapa produksi U  …R.

 Karena handle berada di kiri S,maka S harus merupakan terminal

Relasi Preseden dan Pemakaiannya (cont.)

U

R S…. ….. ………..

(20)

R dan S keduanya adalah bagian dalam suatu handle (R  S)

 dikatakan R dan S memiliki Preseden yang sama, dan harus

direduksi secara bersamaan waktu

 Harus ada suatu produksi U  …RS...

Relasi Preseden dan Pemakaiannya (cont.)

U

..…. ….. … RS..

handle

…. ….

3.

S adalah bagian dari suatu handel, tetapi R tidak (S  R)

 dikatakan R < S

 S merupakan kepala dari beberapa produksi U  S…..

U

……. …R S ………..

(21)

Contoh : Diketahui, Grammar dengan simbol Start Z dan produksi :

Z

 bMb

M  (L | a L  Ma)

Berikut ini akan ditunjukkan bentuk sentensial, pohon sintaks,handel dari relasi yang dapat diturunkan dari produksi.

Bentuk sentensial : bab

Pohon Sintaks :

Relasi Preseden dan Pemakaiannya (cont.)

Z

b

a

b M

Handel : a

(22)

Bentuk sentensial : b(Lb

Pohon Sintaks :

Relasi Preseden dan Pemakaiannya (cont.)

Handel : (L

Relasi yang diberikan Pohon : b  ( (  L

L  b Z b ( b M L

Bentuk sentensial : b(Ma)b

Pohon Sintaks : Z

b

(

b M

L

M a )

Handel : Ma)

Relasi yang diberikan Pohon : b  ( (  L

L  b

(23)

End of Session

Referensi

Dokumen terkait

Sebuah perusahaan dapat dikatakan sebagai perusahaan keluarga apabila kepemilikan perusahaan dimiliki oleh anggota keluarga, dimana terdapat dua atau lebih anggota keluarga

Jika dua orang saling merespon dengan cara yang sama, mereka dikatakan terlibat dalam sebuah hubungan simetris (symmetrical relationship), pertentangan kekuasaan tepatnya seperti

Sebelum memberikan tes kepada siswa, menurut Purwanto (2014:62) terdapat dua syarat psikometris yang harus dipenuhi sebuah instrumen yaitu validitas dan

Definisi 2.1.3 Dua buah simpul pada graf tak-berarah dikatakan bertetangga bila keduanya terhubung langsung dengan sebuah sisi.. Sedangkan simpul bertetangga dengan

Dalam sebuah komposit terdapat dua bagian, yaitu filler atau pengisi atau penguat yang dalam penelitian ini berupa serat dari pelepah pohon gebang, dan bagian kedua

Monopoli merupakan sebuah permainan yang tujuannya menguasai semua petak yang terdapat di atas papan dengan cara membeli ataupun menyewa petak. Monopoli dapat dimainkan oleh dua

Tabel ilustrasi transformasi geometri [1] Untuk transformasi geometri ruang dua di dalam ruang tiga pada sebuah titik, vektor, atau bidang, terdapat cara untuk melakukan

Metode yang digunakan untuk menentukan entitas dari suatu dokumen terdapat dua cara, yaitu mencari pengkodean yang unik dan pemahaman terhadap definisi dari entitas yaitu sebuah objek