I.
SCANNER (LEXYCAL)
Diketahui himpunan produksi P dari
Grammar G ( VN , VT , E, P ) berikut:
<EKSPRESI> →
<EKSPRESI> <ASOP> <SUKU> | <SUKU>
<SUKU>
→ <SUKU>
<MDOP> <FAKTOR> | <FAKTOR>
<FAKTOR>
→ ( <EKSPRESI> ) |
<OPERAND>ô
<ASOP> → + | -
<MDOP>
→ × | ÷
1.
Himpunan
terminal/token dalam Grammar G berisi
a.
VT = { ( , ) , +, - , ×, ÷ , u , v, w }
b.
VT = { +, - , ×, ÷ , u , v, w }
c.
VT = {
+, - , ×, ÷ }
d.
VT = { u , v , w }
2. Berapa jumlah terminal/token
dalam VT pada Grammar G?
a. 9 b. 7
c. 4 d. 3
3.
Berapa
banyak kelompok Token dalam Vt pada Grammar G?
a.
5 , yaitu { ( } , { ) } , {+, -} , { ×, ÷ }, dan { u , v , w }
b. 4 , yaitu
{ ( , ) }
, { + , -} , { ×, ÷ }, dan { u , v , w }
c. 3 , yaitu { ( , ) , +, -} , { ×, ÷ }, dan { u , v , w }
d. 2 , yaitu { ( , ) , u , v , w } dan { +, - , ×, ÷ }
4. Berapa jumlah variabel Non
Terminal dalam Vn pada Grammar G?
a. 6
b. 7 c.
8 d. 9
1.
Apa tugas dari Intermidiate code dan jelaskan tentang Intermediate code ? Intermediate code
(kode antara) adalah hasil dari tahapan analisis yang dibuat oleh kompilator
pada saat mentranslasikan program dari bahasa tingkat tinggi. Fungsinya untuk
memperkecil usaha dalam membuat compilator dari sejumlah bahasa ke sejumlah
mesin, hasil intermediate code dapat digunakan lagi pada mesin lainnya, dan
sebagai proses optimasi lebih mudah.
Bila diberikan kalimat aritmatik (X + Y) * (Z +
T)
Ubahlah kalimat tersebut ke dalam:
1. +,
X, Y, T1
2. +,
Z, T, T2
3. *,T1,
T2, T3
c.
Terjemahkan
hasil (b) ke Assembly Language
LDA X
ADD Y
STO T1
LDA Z
ADD T
MUL T1
STO T2
Tidak ada komentar:
Posting Komentar