Anda di halaman 1dari 5

SOAL UJIAN TENGAH SEMESTER

Mata Kuliah Teknik Kompilasi Tanggal 14 Desember 2020

Fakultas Teknologi Industri Waktu

Jenjang/Jurusan S1/Teknik Informatika Dosen Dr. Ernastuti

Tingkat/Kelas IVIA12 dan IVIA13 Sifat Ujian Open Book

Semester/Tahun PTA 2020/2021 Jumlah Soal 35 Pilihan Ganda


8 Essay

Nama = Muhammad Zidan


Kelas = 4IA88
NPM = 54417290

II SOAL ESSAY:

Diketahui Grammar G dengan Himpunan produksi berikut:

1. A → B ⎜ F
2. B → CD
3. C → x⎮y⎮z
4. D → CD ⎮ ED ⎮ ε
5. E → 0⎮1⎮2⎮3⎮4⎮5⎮6⎮7⎮8⎮9
6. F → GEH
7. G → +⎮-
8. H → EH ⎮ ε

Simbol Start : A

1 Himpunan terminal VT pada grammar G = {x,y,z,0,1,2,3,4,5,6,7,8,9,+,-}


Himpunan terminal VN pada grammar G = {A,B,C,D,E,F,G,H}

2 Spesifikasi dan implementasi leksikal ditandai dengan terlebih dahulu membangun Finite
Automata (FA) dari himpunan terminal VT, lalu diikuti dengan mengkodekan setiap stata
penerima dalam (FA) dengan kelompok current tokennya.

Bangunlah Translasi current token untuk setiap terminal anggota VT

Misal x diwakili oleh Current Token (1,1)


y diwakili oleh Current Token (1,2)
z diwakili oleh Current Token (1,3)
0 diwakili oleh Current Token (2,1)
1 diwakili oleh Current Token (2,2)
2 diwakili oleh Current Token (2,3)
3 diwakili oleh Current Token (2,4)
4 diwakili oleh Current Token (2,5)
5 diwakili oleh Current Token (2,6)
6 diwakili oleh Current Token (2,7)
7 diwakili oleh Current Token (2,8)
8 diwakili oleh Current Token (2,9)
9 diwakili oleh Current Token (2,10)
+ diwakili oleh Current Token (3,1)
- diwakili oleh Current Token (3,2)

3 Dari jawaban no. II.2 diatas,


bila input pada proses leksikal berupa barisan terminal berikut, maka apa output masing
masing barisan tokennya?

a) y7 = (1,2)(2,8)
b) -294 = (3,2)(2,3)(2,10)(2,5)
c) 4xy2 = (2,5)(1,1)(1,2)(2,3)
d) x2y = (1,1)(2,3)(1,2)
e) -21x = (3,2)(2,3)(2,2)(1,1)
f) xxb = (1,1)(1,1)(tidak ditemukan) = eror
g) +1230 = (3,1)(2,2)(2,3)(2,4)(2,1)
h) x123 = (1,1)(2,2)(2,3)(2,4)
i) x-y+2 = (1,1)(3,2)(1,2)(3,1)(2,3)
j) x1x2x3x = (1,1)(2,2)(1,1)(2,3)(1,1)(2,4)(1,1)
k) xxxyyy = (1,1)(1,1)(1,1)(1,2)(1,2)(1,2)
4 Perhatikan Grammar G(VN, VT, S, P).
Tentukan FIRST dari setiap nonterminal anggota himpunan non terminal VN
VN = { A, B, C, D, E, F, G, H }

First(C) = {x,y,z}
First(B) = First(C) = {x,y,z}
First(A) = First(B) = First(C) = {x,y,z}
First(G) = {+,-}
First(F) = First(G) = {+,-}
First(A) = First(F) = First(G) = {+,-}
First(D) = {ε}
First(D) = First(C) = {x,y,z}
First(E) = {0,1,2,3,4,5,6,7,8,9}
First(D) = First(E) = {0,1,2,3,4,5,6,7,8,9}
First(H) = {ε}
First(H) = First(E) = {0,1,2,3,4,5,6,7,8,9}

5 Tentukan FOLLOW dari setiap nonterminal anggota himpunan non terminal VN


VN = { A, B, C, D, E, F, G, H }
Follow(A) = {$}
Follow(B) = {$}
Follow(C) = {$,x,y,z,0,1,2,3,4,5,6,7,8,9}
Follow(D) = {$}
Follow(E) = {$,0,1,2,3,4,5,6,7,8,9}
Follow(F) = {$}
Follow(G) = {$}
Follow(H) = {$}
6 Isilah Parsing Table berikut melalui hasil FIRST dan FOLLOW diatas.
x y z 0 1 2 3 4 5 6 7 8 9 + - $

A
A →B A →B A →B Error Error Error Error Error Error Error Error Error Error
A →F A →F Error

B
B→C B→CD B→CD Error Error Error Error Error Error Error Error Error Error Error Error Error

C
C→x C→y C→z Error Error Error Error Error Error Error Error Error Error Error Error Error

D
D →C D →CD D →CD D →E D →ED D →ED D →E D →E D →E D →E D →E D →ED D →E Error Error
D→ε
D D D D D D D D

E Error Error Error


E→0 E→1 E→2 E→3 E →4 E→5 E→6 E→7 E→8 E→9 Error Error Error

F Error Error Error Error Error Error Error Error Error Error Error Error Error
F→GEH F→GEH Error

G Error Error Error Error Error Error Error Error Error Error Error Error Error
G →+ G →- Error

H Error Error Error


H →E H →EH H →EH H →E H →E H →E H →E H →E H →EH H →E Error Error
H→ε
H H H H H H H

7 Dengan hasil parsing table soal No 6 diatas, ilustrasikan proses Sintaksis untuk masing
masing barisan terminal berikut:
a) y 7

Stack Input Output

$A y7$

$B y7$ A→B

$DC y7$ B→CD

$Dy y7$ C→y

$DE 7$ D→ED

$D7 7$ E→7

$ $ D→ε

b) - 2 9 4

Stack input output

$A -294$

$F -294$ A→F

$HEG -294$ F→GEH

$HE- -294$ G→-


$H2 294$ E→2

$HE 94$ H→EH

$H9 94$ E→9

$HE 4$ H→EH

$H4 4$ E→4

$ $ H→ε

c) 4 x y 2

Stack input output

$A 4xy2
Tidak bisa karena menurut aturan produksi
F→GEH
G→+|-
Jadi tidak bisa menemukan 4xy2 sehingga eror

8 Bangunlah pohon Sintaks untuk masing-masing barisan terminal berikut:

a) y 7

b) - 2 9 4
c) 4 x y 2
Tidak bisa, karena tidak bisa dimulai dari angka harus dari huruf atau tanda +, -

Anda mungkin juga menyukai