1.
Translator yang source codenya adalah bahasa assembly dan object codenya adalah bahasa mesin, disebut dengan …..
a. Assembler
b.
Compiler
c.
Interpreter
d.
Supplier
2.
Translator yang source codenya adalah bahasa tinggkat tinggi dan object code
adalah bahasa mesin atau bahasa assembly.
Source code dan data diproses berbeda disebut dengan …..
a.
Assembler
b. Compiler
c.
Interpreter
3.
Translator yang tidak menghasilkan bentuk object
code, tetapi hasil translasinya hanya dalam bentuk internal, dimana program
induk harus selalu ada (berbeda dengan compiler) disebut dengan …..
a.
Assembler
b.
Compiler
c. Interpreter
d.
Supplier
4.
Berikut Bahasa-bahasa yang menggunakan compiler, kecuali …...
a.
Visual basic (vb), fortran
b.
Pascal, cobol
c. MCS-51
d.
C family (C, C++, C#)
5.
Berikut bahasa-bahasa pemrograman yang
menggunakan interpreter, kecuali …..
a.
PHP
b.
Phyton dan Perl
c.
ASP
d. C family (C, C++, C#)
6.
Berikut yang termasuk fungsi analisis dalam compiler
(compiler) adalah …..
a.
Lexical Analyzer (Scanner)
b.
Syntax Analyzer (Parser)
c.
Semantic Analyzer & Intermediate Code
d.
a, b, dan
c.
7.
Berikut yang merupakan fungsi sintesis dalama
kompilator (compiler) adalah …..
a.
Lexical analyzer (scanner)
b.
Parser
c.
Semnatic & intermediate code
d. Code generator
8.
Finite state automata merupakan tool yang sangat
berguna dalam perancangan salah satu bagian kompilator. Bagian kompilator yang
dimaksud adalah …..
a. Lexical analyzer (scanner)
b.
Parser
c.
Semnatic & intermediate code
d.
Code generator
9.
Push down automata merupakan tool yang banyak
memberikan bantuan pada perancangan bagian terpenting dari kompilator. Bagian
kompilator yang dimaksud adalah …..
a.
Lexical analyzer (scanner)
b. Parser
c.
Semnatic & intermediate code
d.
Code generator
(Himpunan produksi berikut untuk soal
no 10 - 13)
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>
|
->
|
* | :
|
<OPERAND>
|
->
|
u | v | w
|
10.
Himpunan terminal/token dalam Grammar G berisi ……
a. VT = { (, ), +, -, *, :, u, v, w
}
b.
VT = { +, -, x, :, u, v, w }
c.
VT = { +, -, x, :}
d.
VT = { u, v, w }
11.
Berapa jumlah terminal/token dalam VT
pada Grammar G ?
a. 9
b.
7
c.
4
d.
3
12.
Berapa banyak kelompok token dalam VT
pada grammar G ?
a. 5, yaitu { ( }, { ) }, { +, -}, { *, :},
dan { u, v, w }
b.
4, yaitu { (, ) }, { +, -}, { x, :}, dan { u, v,
w }
c.
3, yaitu { (, ), +, -}, { x, :}, dan { u, v, w }
d.
2, yaitu { ( , ), u, v, w } dan { +, -, x, :}
13.
Berapa jumlah variable Non Terminal dalam VN
pada Grammar G ?
a. 6
b.
7
c.
8
d.
9
14.
Yang dimaksud dengan bootstrap adalah …..
a.
Bagaimana orang mengerti bahasa mesin
b.
Cara menggunakan Bahasa tingkat tinggi
c. Membangun sesuatu yang besar dimulai dari
membangun terlebih dulu bagian intinya
d.
Cara menghilangkan komputer
15.
Noam Chomsky melakukan penggolongan tingkatan
dalam bahasa, dikenal dengan istilah …..
a.
BNF
b. Hirarki Chomsky
c.
Tata Bahasa
d.
Grammar
16.
Aturan produksi yang ada menggunakan symbol-simbol
…..
a. Alfha -> betha
b.
A -> b
c.
A -> B
d.
b -> A
(Kalimat
berikut digunakan untuk soal No 17-20)
Menurut Chomsky terdapat 4
pergolongan dalam aturan produksi.
17.
Kategori unrestricted (yaitu tidak ada batasan
pada aturan produksi), adalah …..
a. Tipe 0
b.
Tipe 1
c.
Tipe 2
d.
Tipe 3
18.
Kategori context sensitive (yaitu panjang string
ruas kiri harus lebih kecil atau sama dengan ruas kanan), adalah …..
a.
Tipe 0
b. Tipe 1
c.
Tipe 2
d.
Tipe 3
19.
Kategori context free grammar (yaitu ruas kiri
haruslah tepat satu symbol variabel), adalah ….
a.
Tipe 0
b.
Tipe 1
c. Tipe 2
d.
Tipe 3
20.
Kategori regular (yaitu ruas kiri haruslah tepat
satu symbol variable dan ruas kanan hanya memiliki maksimal 2 simbol yang
terdiri dari symbol variable dan terminal, atau maksimal 1 simbol terminal)
adalah …..
a.
Tipe 0
b.
Tipe 1
c.
Tipe 2
d. Tipe 3
21.
Diagram state (finite automata) pada teknik
kompilasi :
a. Digunakan untuk mengelompokkan token dan
mempermudah melakukan analisis lexical
b.
Digunakan untuk mendapatkan token dan
mempermudah melakukan analisis syntax
c.
Adalah aturan produksi yang dikenalkan oleh
Chomsky
d.
Adalah symbol terminal
22.
Token pada teknik kompilasi :
a.
Digunakan untuk mempermudah melakukan analisis
semantic
b.
Digunakan untuk mempermudah melakukan analisis
syntax
c.
Adalah alat bantu (tools) dalam pembuatan parser
d. Adalah symbol terminal
23.
Model predictive parser pada teknik kompilasi
terdiri dari elemen-elemen …..
a. Input, stack, program, parsing table, dan
output
b.
Input, finite automata, dn output
c.
Input, linear bounded automata, dan output
d.
Input, mesin turing, dan output
24.
Input dan output pada model predictive parse masing-masing
berupa …..
a. Input barisan token dan output pohon syntax
b.
Input barisan terminal dan output barisan token
c.
Input pohon syntax dan output intermediate code
d.
Input pohon syntax dan output barisan terminal
(Grammar
G berikut digunakan untuk soal No 25-28)
Perhatikan grammar G (VN, VT, E, P) berikut :
VN= {E, E’, T, T’, F}
VT= {+, *, (, ), id}
E adalah symbol start
P = { E -> TE’, E’ -> +TE’, E’
-> hampa, T -> FT’, T’ -> *FT’, T’ -> hampa, F -> (E), F ->
id}.
25.
Menurut Chomsky, grammar G dapat di
klasifikasikan sebagai grammar jenis …..
a.
0 (unrestricted)
b.
1 (context sensitive)
c. 2 (context free)
d.
3 (regular)
26.
Dari grammar G, kalimat yang bias dibangun pohon
syntaxnya adalah …..
a. id + id * id
b.
(id + id) – id
c.
(id * id) / id
d.
id * id id +
27.
Untuk membangun parsing table dari grammar g,
pertama-tama harus ditentukan terlebih dulu himpunan first untuk setiap
variable non terminal. Untuk variable non terminal E, himpunan FIRST (E) berisi
….
a. {(, id}
b.
{+, hampa}
c.
{*, hampa}
d.
{$, }}
28.
Untuk variable non terminal T, Himpunan FIRST (T)
berisi ….
a. {(, id}
b.
{+, hampa}
c.
{*, hampa}
d.
{$, }}
29.
Mengelompokkan program sumber menjadi token
disebut dengan
a. Scanner
b.
Parser
c.
Teller
d.
Interpreter
30.
Yang bertugas untuk memeriksa kebenaran dan
urutan dari token-token yang terbentuk oleh scanner disebut dengan …..
a.
Scanner
b. Parser
c.
Teller
d.
Interpreter
31.
Tugas dari lexical analyzer (scanner) adalah …..
a. Mentransformasikan kalimat ke dalam bentuk
token-token
b.
Proses pendeteksian urutan token-token
c.
Untuk mengenali makna dari simbol-simbol
d.
Memeriksa variable sudah dideklarasikan atau
belum
32.
Tugas dari semantic analyzer adalah …..
a.
Mentransformasikan kalimat ke dalam bentuk
token-token
b.
Proses pendeteksian urutan token-token
c. Untuk mengenali makna dari simbol-simbol
d.
Memeriksa variable sudah dideklarasikan atau
belum
33.
Tugas dari syntax analyzer adalah …..
a.
Mentransformasikan kalimat ke dalam bentuk
token-token
b. Proses pengelompokan token-token kedalam
class syntax
c.
Untuk mengenali makna dari simbol-simbol
d.
Memeriksa variable sudah dideklarasikan atau
belum
34.
Tugas dari intermediate code adalah …..
a.
Mentransformasikan kalimat ke dalam bentuk
token-token
b.
Proses pengelompokan token-token kedalam class
syntax
c. Memperkecil usaha dalam pembuatan
compilator dari sejumlah bahasa ke sejumlah mesin dan bersifat machine
independent.
d.
Memeriksa variable sudah dideklarasikan atau
belum
35.
Fungsi dari tabel simbol adalah .....
a.
Mentransformasikan kalimat ke dalam bentuk
token-token
b.
Proses pengelompokan token-token kedalam class
syntax
c.
Memperkecil usaha dalam pembuatan compilator
dari sejumlah Bahasa ke sejumlah mesin.
d. Menindak lanjuti untuk perbaikan (Recovery)
(Pernyataan berikut digunakan untuk soal no 36-40)
Error handling
dalam teknik kompilasi adalah penjelasan tentang kesalahan program, penanganan
kesalahan, reaksi compiler pada kesalahan, error recovery, dan error repair.
Kesalahan program dapat berupa kesalahan leksikal, kesalahan syntax, dan
kesalahan semantic.
36. Kesalahan
mengetik atau mengeja misal ingin mengetik THEN namun yang diketik TEN, adalah
tipe kesalahan yang termasuk ….
a. Kesalahan leksikal
b.
Kesalahan semantic
c.
Kesalahan syntax
d.
Kesalahan pembakitan code
37.
Bila yang diketik A := X + (B * (C + D); maka
masalah ini termasuk tipe ….
a.
Kesalahan leksikal
b.
Kesalahan semantic
c. Kesalahan syntax
d.
Kesalahan pembakitan code
38.
Bila diketik int y; y := 1.5 * 0.78; maka
masalah ini termasuk tipe …..
a.
Kesalahan leksikal
b. Kesalahan semantic
c.
Kesalahan syntax
d.
Kesalahan pembakitan code
(Pernyataan berikut digunakan untuk soal no
39 - 40)
Hasil intermediate
code dalam tahap analisis akhir diteruskan ke tahap sintesis berupa
pembangkitan kode (code generator).
39.
Kalimat aritmatik (X + Y) diterjemahkan pada
tahap intermediate code secara prefix quadruple. Hasil terjemahan ini berbentuk
…..
a. +, X, Y, T
b.
X, Y, +, T
c.
X, +, Y, T
d.
X, Y, T, +
40.
Kemudian kalimat aritmatik (X + Y) yang sudah
diterjemahkan ke bentuk prefix quadruple tersebut sitranslasikan ke dalam
assembly language (code generator) dengan menggunakan accumulator tunggal,
yaitu …..
a.
LDA X ADD
Y STO T
b.
LDA X LDA
Y STO T
c.
LDA T ADD
X STO Y
d. ADD X STO
T ADD Y
Tidak ada komentar:
Posting Komentar