SlideShare a Scribd company logo
UNIVERSITAS
GUNADARMA
SK No. 92 / Dikti / Kep / 1996
Fakultas Ilmu Komputer, Teknologi Industri, Ekonomi,
Teknik Sipil & Perencanaan, Psikologi, Sastra
SOAL UJIAN AKHIR SEMESTER
Mata Kuliah : P. Teknik Kompilasi
(IT-011318)
Tanggal : 16 Juli 2013
Fakultas : ILKOM Waktu : 90 menit
Jenjang /Jurusan : S1/SI Dosen : -
Tingakat/Kelas : 3KA01-21,24-33, 35 Sifat Ujian : Tutup Buku
Semester/Tahun : ATA 2012/2013 Jumlah soal : 35 pilihan ganda
Pilih jawaban yang paling benar diantara jawaban a, b, c atau d
1. Di dalam proses kompilasi, Semantik Analisis termasuk kedalam tahapan . . . .
a. Sintesis c. Back end
b. Front end d. Parser
2. Fungsi dari Analisis Semantik adalah . . . .
a. Memecahkan program sumber menjadi besaran leksikal/token
b. Membangkitkan kode antara
c. Memperkecil hasil dan mempercepat proses
d. Menyimpan semua informasi yang berhubungan dengan proses kompilasi
3. Hasil dari tahapan analisis pada Semantik Analisis adalah . . . .
a. Token c. Parsing
b. Intermediate Code d. Tabel Simbol
4. Kegunaan dari Intermediate Code adalah kecuali . . . .
a. Melakukan pemeriksaan terhadap kesesuaian tipe dalam statement-
statement yang ada
b. Intermediate Code lebih mudah dipahami dari pada kode assembly atau kode
mesin
c. Strategi optimisasi lebih mudah dilakukan pada Intermediate Code daripada
pada program sumber dan kode mesin
d. Intermediate Code yang dihasilkan dapat digunakan lagi pada mesin lainnya
5. Macam-macam Intermediate Code kecuali . . . .
a. Notasi Postfix c. Notasi N-Tuple
b. Syntax Tree d. Notasi Token
6. Berdasarkan ekspresi di bawah ini, maka notasi postfix-nya adalah . . . .
(a+b)*c
a. (a+b)c* c. *cab+
b. (ab+)c* d. ab+c*
7. Fungsi dari Analisis Semantik adalah . . . .
a. Memecahkan program sumber menjadi besaran leksikal/token
b. Memperkecil hasil dan mempercepat proses
c. Membangkitkan kode antara
d. Menyimpan semua informasi yang berhubungan dengan proses kompilasi
8. Hasil dari tahapan analisis pada Semantik Analisis adalah . . . .
a. Parsing c. Intermediate Code
b. Token d. Tabel Simbol
9. Kegunaan dari Intermediate Code adalah kecuali . . . .
a. Intermediate Code yang dihasilkan dapat digunakan lagi pada mesin lainnya
b. Melakukan pemeriksaan terhadap kesesuaian tipe dalam statement-
statement yang ada
c. Strategi optimisasi lebih mudah dilakukan pada Intermediate Code daripada
pada program sumber dan kode mesin
d. Intermediate Code lebih mudah dipahami dari pada kode assembly atau kode
mesin
10. Macam-macam Intermediate Code kecuali . . . .
a. Notasi Postfix c. Notasi N-Tuple
b. Notasi Token d. Syntax Tree
11. Berdasarkan ekspresi di bawah ini, maka notasi postfix-nya adalah . . . .
(a+b)*c
a. (a+b)c* c. ab+c*
b. (ab+)c* d. *cab+
12. Perhatikan potongan program di bawah ini !
If a>b then
a:=5
else
b:=10
Maka notasi postfix-nya adalah . . . .
a. (1) > b. (1) a c. (1) > d. (1) a
(2) b (2) > (2) a (2) b
(3) a (3) b (3) b (3) >
(4) goto 11 (4) 13 (4) BZ (4) goto 11
(5) BZ (5) a (5) goto 11 (5) BZ
(6) := (6) := (6) a (6) a
(7) 5 (7) 5 (7) 5 (7) 5
(8) a (8) BR (8) := (8) :=
(9) goto 14 (9) 8 (9) BR (9) goto 14
(10) BR (10) b (10) b (10) BR
(11) := (11) := (11) goto 14 (11) b
(12) 10 (12) 10 (12) := (12) 10
(13) b (13) BZ (13) 10 (13) :=
(14) (14) (14) (14)
13. Di dalam notasi postfix jika potongan program percabangan berada pada kondisi
yang salah, maka akan diberikan ekspresi . . . .
a. BZ c. BS
b. BR d. BX
14. Di dalam Intermediate Code bila baris instruksi yang ada terdiri lebih dari 1 tuple
maka dapat diselesaikan dengan menggunakan notasi berikut kecuali . . . .
a. N-Tuple c. Triple Notation
b. Notasi Postfix d. Quadruples Notation
15. Bila diberikan ekspresi seperti berikut !
WHILE <eks> DO <statement>
Maka bila diubah kedalam notasi postfix menjadi . . . .
a. <eks> <label 1> BZ <statement> <label 2> BR
b. <label 1> <eks> BR <label 2> <statement> BZ
c. <label 1> BZ <eks> BR <label 2> <statmenent>
d. <statmenent> BR <eks> <label 1> BZ <label 2> <statement>
16. Perhatikan statement berikut ini !
z1 := b * c
z2 := a + z1
x := z2
Jika statement diatas diubah menjadi kode antara dalam bentuk Triples Notation
menjadi . . . .
a. (1) LDA b c. (1) :=, *, a, b, z1
(2) MUL c (2) BZ
(3) STO z1 (3) :=, +, a, z1, z2
(4) LDA a (4) BR
(5) ADD z1 (5) :=, x, z2
(6) STO z2
(7) LDA z2
(8) STO x
b. (1) *, b, c, T1 d. (1) *, b, c
(2) +, a, T1, T2 (2) +, a, (1)
(3) :=, T1, T2, x (3) :=, x, (2)
17. Perhatikan statement berikut ini !
A := B*C+D-E/F*G
Jika statement diatas diubah menjadi kode antara dalam bentuk Quadruples
Notation akan menjadi . . . .
a. (1) *, B, C, T1 c. (1) *, B, C, T1
(2) +, C, D, T2 (2) *, F, G, T2
(3) -, D, E, T3 (3) /, E, T2, T3
(4) /, E, F, T4 (4) +, T1, D, T4
(5) *, F, G, T5 (5) -, T4, T3, A
b. (1) *, F, G, T1 d. (1) *, B, C, T1
(2) *, B, C, T2 (2) /, E, F, T2
(3) /, E, F, T3 (3) *, T2, G, T3
(4) +, C, D, T4 (4) +, C, D, T4
(5) -, T4, T3, A (5) -, T4, T2, A
18. Diketahui tata bahasa G_3 berikut aturan semantiknya untuk pengecekan tipe
variabel yang dipakai dalam suatu program.
D → T L {L.in := T.type;}
T → int {T.type := integer;}
T → real {T.type := real;}
L→ L1 ‘,’ id {L1.in:=L.in; addtype(id.entry, L.in);}
L → id {addtype(id.entry, L.in);}
Aturan sematik berikut adalah aturan semantik dengan pendekatan yang disebut
sebagai:
a. Recursive descent
b. Translation scheme
c. Syntax directed translation
d. Shift reducing
19. Annotated parse tree untuk kalimat input:
int a,b
berdasarkan tata bahasa G-3 dengan aturan semantik sebagaimana pada soal
no.18 adalah sebagai berikut:
a. Tree
b. tree
D
L
‘,’
L b
int
a
T
T.type = int
D
L.in = addtype()
‘,’
L.in = int; b
int
a
T
D
L
‘,’
L b
int
a
c. tree
d. Tree
20. Dependency graph untuk kalimat input int a, b adalah sebagai berikut:
a. Graf
b. Graf
T.type L.in = int;
L.in = int;
b
a
int addtype()
addtype()
D
L
‘,’L bint
T
T.type = int
D
L.in = int; addtype()
‘,’
L.in = int; addtype() b
int
a
c. a dan b benar
d. a dan b salah
21. Diketahui tata bahasa G_3 berikut aturan semantiknya untuk maksud yang sama
sebagaimana pada soal no.18, namun ditulis dengan translation scheme, maka
aturan yang benar adalah:
a. Aturan semantik
(a) D → T L {L.in := T.type;}
(b) T → int {T.type := integer;}
(c) T → real {T.type := real;}
(d) L→ L1 ‘,’ id {L1.in:=L.in; addtype(id.entry, L.in);}
(e) L → id {addtype(id.entry, L.in);}
b. Aturan semantik
(a) D → TL {L.in := T.type; {T.type := integer;} {T.type := real;}}
(b) T → int
(c) T → real
(d) L→ L1 ‘,’ {L1.in:=L.in} id {addtype(id.entry, L.in);}
(e) L → id {addtype(id.entry, L.in);}
c. Aturan semantik
(a) D → T{T.type := integer;} {T.type := real;} L {L.in := T.type;}
(b) T → int
(c) T → real
(d) L→ L1 ‘,’ {L1.in:=L.in} id {addtype(id.entry, L.in);}
(e) L → id {addtype(id.entry, L.in);}
d. Aturan semantik
(a) D → TL {L.in := T.type;}
(b) T → int {T.type := integer;}
(c) T → real {T.type := real;}
(d) L→ L1 ‘,’ {L1.in:=L.in} id {addtype(id.entry, L.in);}
(e) L → id {addtype(id.entry, L.in);}
22. Perhatikan cuplikan program berikut:
A := B + 10 * 4; ..... (1)
C := B + D; ...... (2)
F : = B + D – G; ...... (3)
FOR I := 1 to 100 DO ...... (4)
BEGIN
X := X + I; ...... (5)
A : = A + 1; ...... (6)
a
B : = 7; ...... (7)
END;
Statement no (1) dapat dioptimasi secara lokal dengan cara :
a. Loop Rolling
b. Redundant-Subexpression Elimination
c. Folding
d. Frequency Reduction
23. Perhatikan cuplikan program berikut:
A := B + 10 * 4; ..... (1)
C := B + D; ...... (2)
F : = B + D – G; ...... (3)
FOR I := 1 to 100 DO ...... (4)
BEGIN
X := X + I; ...... (5)
A : = A + 1; ...... (6)
B : = 7; ...... (7)
END;
Statement no (2) dan (3) dapat dioptimasi secara lokal dengan cara :
a. Folding
b. Redundant-Subexpression Elimination
c. Loop Rolling
d. Frequency Reduction
24. Perhatikan cuplikan program berikut:
A := B + 10 * 4; ..... (1)
C := B + D; ....... (2)
F : = B + D – G; ....... (3)
FOR I := 1 to 100 DO ...... (4)
BEGIN
X := X + I; ....... (5)
A : = A + 1; ....... (6)
B : = 7; ....... (7)
END;
Statement no (6) dapat dioptimasi secara lokal dengan cara :
a. Redundant-Subexpression Elimination
b. Strength Reduction
c. Loop Rolling
d. Frequency Reduction
25. Perhatikan cuplikan program berikut:
A := B + 10 * 4; ...... (1)
C := B + D; ....... (2)
F : = B + D – G; ....... (3)
FOR I := 1 to 100 DO ...... (4)
BEGIN
X := X + I; ....... (5)
A : = A + 1; ....... (6)
B : = 7; ....... (7)
END;
Statement no (7) dapat dioptimasi secara lokal dengan cara :
a. Strength Reduction
b. Frequency Reduction
c. Loop Rolling
d. Redundant-Subexpression Elimination
26. Berikut ini proses-proses yang dilakukan saat pernyataan sebuah iterasi
teridentifikasi dalam program sehubungan dengan optimalisasi program, kecuali:
a. Perubahan nilai pada variabel loop harus selalu dijaga.
b. Perlu dilakukan inisialisasi pada variabel loop
c. Dilakukan pengujian terhadap variabel loop apakah sudah mencapai kondisi
terminasi
d. Adjustment yaitu penambahan atau pengurangan nilai pada variabel loop
27. Diketahui sebuah cuplikan program berikut :
J := 7;
IF J < 5 THEN
K : = K -1;
Pada optimasi Global ini disebut :
a. Unreachable code
b. Unused Parameter
c. Unused Variable
d. Variable tanpa nilai awal
28. Berikut ini kegunaan Tabel Informasi pada model kompilasi, kecuali:
a. Mempermudah pembuatan dan implementasi dari semantic analyzer
b. Untuk membantu pemeriksaan kebenaran semantik dari program sumber
c. Untuk membantu dan mempermudah dalam pembuatan intermediate code dan
proses pembangkitan kode.
d. Membantu dalam melakukan pemilahan statement program ke dalam
bentuk token-token
29. Tabel informasi atau tabel simbol dibuat pada saat tahap berikut:
a. Pembangkitan Kode
b. Analisis Semantik
c. Analisis Sintaksis
d. Analisis Leksikal
30. Field dalam Tabel Identifier yang menunjukkan informasi obyektif berupa prosedur,
fungsi, tipe, variabel atau konstanta adalah:
a. Nama Identifier
b. Tipe dari Identifier
c. Level Identifier
d. Jenis dari Identifier
31. Karakter-karakter yang merupakan konstanta merupakan elemen dalam tabel
berikut:
a. Tabel Real
b. Tabel Display
c. Tabel String
d. Tabel Array
32. Pengisian tabel display dilakukan dengan konsep berikut:
a. Array
b. Parsing
c. Grammar
d. Stack
33. Berikut ini merupakan tabel-tabel yang digunakan saat mencari kelengkapan
informasi suatu identifier, kecuali:
a. Tabel Identifier
b. Tabel String
c. Tabel Real
d. Tabel Array
34. Diketahui himpunan produksi sbb:
S → aS S → aB B → bC C → aC C → a
Himpunan produksi di atas akan menghasilkan bahasa :
a. { | n,m >=1} c. { | n,m >=1}
b. { | n,m >=1} d. { | n,m >=1}
35. Jika di ketahui state diagram sebagai berikut :
String yang dapat di terima (accept) adalah :
a. 10011110 c. 00110101
b. 1010011 d. 1110011

More Related Content

What's hot

Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship DiagramAnggi Mayona
 
Error Handling - P 7 Teknik Kompilasi
Error Handling - P 7 Teknik Kompilasi Error Handling - P 7 Teknik Kompilasi
Error Handling - P 7 Teknik Kompilasi
ahmad haidaroh
 
Materi Basis Data - Anomali dan Normalisasi
Materi Basis Data - Anomali dan NormalisasiMateri Basis Data - Anomali dan Normalisasi
Materi Basis Data - Anomali dan NormalisasiDerina Ellya R
 
Penjelasan Program
Penjelasan ProgramPenjelasan Program
Penjelasan Program
Reynes E. Tekay
 
Pertemuan 6 & 7 ars. gerbang logika
Pertemuan 6 & 7 ars. gerbang logikaPertemuan 6 & 7 ars. gerbang logika
Pertemuan 6 & 7 ars. gerbang logika
Buhori Muslim
 
Analisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik KompilasiAnalisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik Kompilasi
ahmad haidaroh
 
7. cara penanganan kesalahan
7. cara penanganan kesalahan7. cara penanganan kesalahan
7. cara penanganan kesalahanyuster92
 
Soal konsep sistem informasi abc
Soal konsep sistem informasi   abcSoal konsep sistem informasi   abc
Soal konsep sistem informasi abc
Bima Indra Mulya
 
Dokumen Perencanaan Proyek
Dokumen Perencanaan ProyekDokumen Perencanaan Proyek
Dokumen Perencanaan Proyek
Hamka Aminullah
 
Makalah pengambilan keputusan dalam manajemen
Makalah pengambilan keputusan dalam manajemenMakalah pengambilan keputusan dalam manajemen
Makalah pengambilan keputusan dalam manajemen
Marobo United
 
Use skenario
Use skenarioUse skenario
Use skenario
Septyy Wulandary
 
Paralel prosesor
Paralel prosesorParalel prosesor
Paralel prosesor
Adola Silaban
 
proposisi majemuk & Tautologi
 proposisi majemuk & Tautologi proposisi majemuk & Tautologi
proposisi majemuk & Tautologi
Huzairi Zairi
 
Model sistem umum perusahaan
Model sistem umum perusahaanModel sistem umum perusahaan
Model sistem umum perusahaan
'siiecewe Sukhakodhokpink
 
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
Uofa_Unsada
 
Kuliah SPK : Metode TOPSIS
Kuliah SPK : Metode TOPSISKuliah SPK : Metode TOPSIS
Kuliah SPK : Metode TOPSIS
Mutmainnah Muchtar
 
Penyelesaian program linear dalam matriks
Penyelesaian program linear dalam matriksPenyelesaian program linear dalam matriks
Penyelesaian program linear dalam matriks
dimar aji
 

What's hot (20)

Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
 
Error Handling - P 7 Teknik Kompilasi
Error Handling - P 7 Teknik Kompilasi Error Handling - P 7 Teknik Kompilasi
Error Handling - P 7 Teknik Kompilasi
 
Materi Basis Data - Anomali dan Normalisasi
Materi Basis Data - Anomali dan NormalisasiMateri Basis Data - Anomali dan Normalisasi
Materi Basis Data - Anomali dan Normalisasi
 
Penjelasan Program
Penjelasan ProgramPenjelasan Program
Penjelasan Program
 
Pertemuan 6 & 7 ars. gerbang logika
Pertemuan 6 & 7 ars. gerbang logikaPertemuan 6 & 7 ars. gerbang logika
Pertemuan 6 & 7 ars. gerbang logika
 
Analisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik KompilasiAnalisis Semantik - P 6 Teknik Kompilasi
Analisis Semantik - P 6 Teknik Kompilasi
 
7. cara penanganan kesalahan
7. cara penanganan kesalahan7. cara penanganan kesalahan
7. cara penanganan kesalahan
 
Soal konsep sistem informasi abc
Soal konsep sistem informasi   abcSoal konsep sistem informasi   abc
Soal konsep sistem informasi abc
 
Dokumen Perencanaan Proyek
Dokumen Perencanaan ProyekDokumen Perencanaan Proyek
Dokumen Perencanaan Proyek
 
Makalah pengambilan keputusan dalam manajemen
Makalah pengambilan keputusan dalam manajemenMakalah pengambilan keputusan dalam manajemen
Makalah pengambilan keputusan dalam manajemen
 
Use skenario
Use skenarioUse skenario
Use skenario
 
Paralel prosesor
Paralel prosesorParalel prosesor
Paralel prosesor
 
Hirarky chomsky
Hirarky chomskyHirarky chomsky
Hirarky chomsky
 
Sistem berkas
Sistem berkasSistem berkas
Sistem berkas
 
proposisi majemuk & Tautologi
 proposisi majemuk & Tautologi proposisi majemuk & Tautologi
proposisi majemuk & Tautologi
 
Latihan soal struktur data
Latihan soal struktur dataLatihan soal struktur data
Latihan soal struktur data
 
Model sistem umum perusahaan
Model sistem umum perusahaanModel sistem umum perusahaan
Model sistem umum perusahaan
 
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
LAPORAN TUGAS AKHIR PERANCANGAN APLIKASI KNOWLEDGE BASE SYSTEM UNTUK INSTRUKS...
 
Kuliah SPK : Metode TOPSIS
Kuliah SPK : Metode TOPSISKuliah SPK : Metode TOPSIS
Kuliah SPK : Metode TOPSIS
 
Penyelesaian program linear dalam matriks
Penyelesaian program linear dalam matriksPenyelesaian program linear dalam matriks
Penyelesaian program linear dalam matriks
 

Similar to Kompilasi13 ka p

Kompilasi13 ka p (2)
Kompilasi13 ka p (2)Kompilasi13 ka p (2)
Kompilasi13 ka p (2)
Alvin Setiawan
 
Unas rpl 2009 2010-susulan
Unas rpl 2009 2010-susulanUnas rpl 2009 2010-susulan
Unas rpl 2009 2010-susulan
dhidhin
 
Rangkuman soal TI SMK
Rangkuman soal TI SMKRangkuman soal TI SMK
Rangkuman soal TI SMK
Saprudin Eskom
 
Soal UAS Pemrograman Dasar Kelas 11 SMK semester ganjil tahun ajaran 2014-2015
Soal UAS Pemrograman Dasar Kelas 11 SMK semester ganjil tahun ajaran 2014-2015Soal UAS Pemrograman Dasar Kelas 11 SMK semester ganjil tahun ajaran 2014-2015
Soal UAS Pemrograman Dasar Kelas 11 SMK semester ganjil tahun ajaran 2014-2015
Saprudin Eskom
 
Soalprogdasx
SoalprogdasxSoalprogdasx
Soalprogdasx
Musanif Efendi
 
Analisis semantik, kode antara dan pembangkitan kode (2).pptx
Analisis semantik, kode antara dan pembangkitan kode (2).pptxAnalisis semantik, kode antara dan pembangkitan kode (2).pptx
Analisis semantik, kode antara dan pembangkitan kode (2).pptx
DiaAku6
 
Soal UAS Pemrograman Dasar kelas 10 semester genap tahun ajaran 2014-2015
Soal UAS Pemrograman Dasar kelas 10 semester genap tahun ajaran 2014-2015Soal UAS Pemrograman Dasar kelas 10 semester genap tahun ajaran 2014-2015
Soal UAS Pemrograman Dasar kelas 10 semester genap tahun ajaran 2014-2015
Saprudin Eskom
 
Tugas 7 kkpi muhamad ihsan kelas xii tav
Tugas 7 kkpi muhamad ihsan kelas xii tavTugas 7 kkpi muhamad ihsan kelas xii tav
Tugas 7 kkpi muhamad ihsan kelas xii tav
082383997664
 
SOAL UKK EXCEL SM 2 KELAS XI
SOAL UKK EXCEL SM 2 KELAS XISOAL UKK EXCEL SM 2 KELAS XI
SOAL UKK EXCEL SM 2 KELAS XI
yeni yen
 
LATIHAN SOAL TIK KELAS X
LATIHAN SOAL TIK KELAS XLATIHAN SOAL TIK KELAS X
LATIHAN SOAL TIK KELAS X
yadi supriyadi
 
TUGAS PRAKTEK EXCEL
TUGAS PRAKTEK EXCELTUGAS PRAKTEK EXCEL
TUGAS PRAKTEK EXCEL
Lufangkwon
 
TUGAS PRAKTEK EXCEL
TUGAS PRAKTEK EXCELTUGAS PRAKTEK EXCEL
TUGAS PRAKTEK EXCEL
Lufangkwon
 
sns_paper complement_r010110
sns_paper complement_r010110sns_paper complement_r010110
sns_paper complement_r010110
S N M P Simamora
 
Teknik kompilasi
Teknik kompilasiTeknik kompilasi
Teknik kompilasi
HedyIzmaya
 
Kuliah 4&5 sistem digital
Kuliah 4&5 sistem digitalKuliah 4&5 sistem digital
Kuliah 4&5 sistem digital
satriahelmy
 
Algoritma dan Pemrograman
Algoritma dan Pemrograman Algoritma dan Pemrograman
Algoritma dan Pemrograman
Farah Imaniar Rettyana
 
Penggunaan if dan teknik dasar bagian 3
Penggunaan if dan teknik dasar bagian 3Penggunaan if dan teknik dasar bagian 3
Penggunaan if dan teknik dasar bagian 3
Fazar Ikhwan Guntara
 
Perkenalan Pemrograman C++
Perkenalan Pemrograman C++Perkenalan Pemrograman C++
Perkenalan Pemrograman C++
Sparisoma Viridi
 
Penggunaan if dan teknik dasar bagian 1
Penggunaan if dan teknik dasar bagian 1Penggunaan if dan teknik dasar bagian 1
Penggunaan if dan teknik dasar bagian 1
Fazar Ikhwan Guntara
 
Diktat c++ d76_dev-cpp
Diktat c++ d76_dev-cppDiktat c++ d76_dev-cpp
Diktat c++ d76_dev-cpp
staffpengajar
 

Similar to Kompilasi13 ka p (20)

Kompilasi13 ka p (2)
Kompilasi13 ka p (2)Kompilasi13 ka p (2)
Kompilasi13 ka p (2)
 
Unas rpl 2009 2010-susulan
Unas rpl 2009 2010-susulanUnas rpl 2009 2010-susulan
Unas rpl 2009 2010-susulan
 
Rangkuman soal TI SMK
Rangkuman soal TI SMKRangkuman soal TI SMK
Rangkuman soal TI SMK
 
Soal UAS Pemrograman Dasar Kelas 11 SMK semester ganjil tahun ajaran 2014-2015
Soal UAS Pemrograman Dasar Kelas 11 SMK semester ganjil tahun ajaran 2014-2015Soal UAS Pemrograman Dasar Kelas 11 SMK semester ganjil tahun ajaran 2014-2015
Soal UAS Pemrograman Dasar Kelas 11 SMK semester ganjil tahun ajaran 2014-2015
 
Soalprogdasx
SoalprogdasxSoalprogdasx
Soalprogdasx
 
Analisis semantik, kode antara dan pembangkitan kode (2).pptx
Analisis semantik, kode antara dan pembangkitan kode (2).pptxAnalisis semantik, kode antara dan pembangkitan kode (2).pptx
Analisis semantik, kode antara dan pembangkitan kode (2).pptx
 
Soal UAS Pemrograman Dasar kelas 10 semester genap tahun ajaran 2014-2015
Soal UAS Pemrograman Dasar kelas 10 semester genap tahun ajaran 2014-2015Soal UAS Pemrograman Dasar kelas 10 semester genap tahun ajaran 2014-2015
Soal UAS Pemrograman Dasar kelas 10 semester genap tahun ajaran 2014-2015
 
Tugas 7 kkpi muhamad ihsan kelas xii tav
Tugas 7 kkpi muhamad ihsan kelas xii tavTugas 7 kkpi muhamad ihsan kelas xii tav
Tugas 7 kkpi muhamad ihsan kelas xii tav
 
SOAL UKK EXCEL SM 2 KELAS XI
SOAL UKK EXCEL SM 2 KELAS XISOAL UKK EXCEL SM 2 KELAS XI
SOAL UKK EXCEL SM 2 KELAS XI
 
LATIHAN SOAL TIK KELAS X
LATIHAN SOAL TIK KELAS XLATIHAN SOAL TIK KELAS X
LATIHAN SOAL TIK KELAS X
 
TUGAS PRAKTEK EXCEL
TUGAS PRAKTEK EXCELTUGAS PRAKTEK EXCEL
TUGAS PRAKTEK EXCEL
 
TUGAS PRAKTEK EXCEL
TUGAS PRAKTEK EXCELTUGAS PRAKTEK EXCEL
TUGAS PRAKTEK EXCEL
 
sns_paper complement_r010110
sns_paper complement_r010110sns_paper complement_r010110
sns_paper complement_r010110
 
Teknik kompilasi
Teknik kompilasiTeknik kompilasi
Teknik kompilasi
 
Kuliah 4&5 sistem digital
Kuliah 4&5 sistem digitalKuliah 4&5 sistem digital
Kuliah 4&5 sistem digital
 
Algoritma dan Pemrograman
Algoritma dan Pemrograman Algoritma dan Pemrograman
Algoritma dan Pemrograman
 
Penggunaan if dan teknik dasar bagian 3
Penggunaan if dan teknik dasar bagian 3Penggunaan if dan teknik dasar bagian 3
Penggunaan if dan teknik dasar bagian 3
 
Perkenalan Pemrograman C++
Perkenalan Pemrograman C++Perkenalan Pemrograman C++
Perkenalan Pemrograman C++
 
Penggunaan if dan teknik dasar bagian 1
Penggunaan if dan teknik dasar bagian 1Penggunaan if dan teknik dasar bagian 1
Penggunaan if dan teknik dasar bagian 1
 
Diktat c++ d76_dev-cpp
Diktat c++ d76_dev-cppDiktat c++ d76_dev-cpp
Diktat c++ d76_dev-cpp
 

More from Alvin Setiawan

Penyelesaian pers-biseksi13
Penyelesaian pers-biseksi13Penyelesaian pers-biseksi13
Penyelesaian pers-biseksi13Alvin Setiawan
 
Penyelesaian persamaan-non-linear
Penyelesaian persamaan-non-linearPenyelesaian persamaan-non-linear
Penyelesaian persamaan-non-linearAlvin Setiawan
 
Pengembangan sistem 1 2
Pengembangan sistem 1 2Pengembangan sistem 1 2
Pengembangan sistem 1 2Alvin Setiawan
 
Nl eqn lab
Nl eqn labNl eqn lab
Nl eqn lab
Alvin Setiawan
 
Modul6
Modul6Modul6
Modul pelatihan ly_x_untuk_jurnal-feb-2cols
Modul pelatihan ly_x_untuk_jurnal-feb-2colsModul pelatihan ly_x_untuk_jurnal-feb-2cols
Modul pelatihan ly_x_untuk_jurnal-feb-2colsAlvin Setiawan
 
Micro sim template_2
Micro sim template_2Micro sim template_2
Micro sim template_2
Alvin Setiawan
 
Metode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libreMetode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libre
Alvin Setiawan
 
Metode numerik-buku-ajar-unila
Metode numerik-buku-ajar-unilaMetode numerik-buku-ajar-unila
Metode numerik-buku-ajar-unilaAlvin Setiawan
 
Met num3 persnonl-inier_baru
Met num3 persnonl-inier_baruMet num3 persnonl-inier_baru
Met num3 persnonl-inier_baruAlvin Setiawan
 
Met num02 persamaan non linier
Met num02 persamaan non linierMet num02 persamaan non linier
Met num02 persamaan non linierAlvin Setiawan
 
Membuat dokumen dengan latex ver.0.3
Membuat dokumen dengan latex   ver.0.3Membuat dokumen dengan latex   ver.0.3
Membuat dokumen dengan latex ver.0.3Alvin Setiawan
 
Membangun website e-commerce_berbasis_php_dan_my_sql
Membangun website e-commerce_berbasis_php_dan_my_sqlMembangun website e-commerce_berbasis_php_dan_my_sql
Membangun website e-commerce_berbasis_php_dan_my_sql
Alvin Setiawan
 
M8 perancangan terinci
M8 perancangan terinciM8 perancangan terinci
M8 perancangan terinci
Alvin Setiawan
 

More from Alvin Setiawan (20)

Penyelesaian pers-biseksi13
Penyelesaian pers-biseksi13Penyelesaian pers-biseksi13
Penyelesaian pers-biseksi13
 
Penyelesaian persamaan-non-linear
Penyelesaian persamaan-non-linearPenyelesaian persamaan-non-linear
Penyelesaian persamaan-non-linear
 
Pengembangan sistem 1 2
Pengembangan sistem 1 2Pengembangan sistem 1 2
Pengembangan sistem 1 2
 
Pedoman ta2008
Pedoman ta2008Pedoman ta2008
Pedoman ta2008
 
Pbw week 01 basics
Pbw week 01   basicsPbw week 01   basics
Pbw week 01 basics
 
Paper
PaperPaper
Paper
 
Nl eqn lab
Nl eqn labNl eqn lab
Nl eqn lab
 
Modul6
Modul6Modul6
Modul6
 
Modul pelatihan ly_x_untuk_jurnal-feb-2cols
Modul pelatihan ly_x_untuk_jurnal-feb-2colsModul pelatihan ly_x_untuk_jurnal-feb-2cols
Modul pelatihan ly_x_untuk_jurnal-feb-2cols
 
Ml2 f304213
Ml2 f304213Ml2 f304213
Ml2 f304213
 
Micro sim template_2
Micro sim template_2Micro sim template_2
Micro sim template_2
 
Metode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libreMetode numerik-rinaldi-munir-libre
Metode numerik-rinaldi-munir-libre
 
Metode numerik-buku-ajar-unila
Metode numerik-buku-ajar-unilaMetode numerik-buku-ajar-unila
Metode numerik-buku-ajar-unila
 
Metode regula falsi
Metode regula falsiMetode regula falsi
Metode regula falsi
 
Metode biseksi
Metode biseksiMetode biseksi
Metode biseksi
 
Met num3 persnonl-inier_baru
Met num3 persnonl-inier_baruMet num3 persnonl-inier_baru
Met num3 persnonl-inier_baru
 
Met num02 persamaan non linier
Met num02 persamaan non linierMet num02 persamaan non linier
Met num02 persamaan non linier
 
Membuat dokumen dengan latex ver.0.3
Membuat dokumen dengan latex   ver.0.3Membuat dokumen dengan latex   ver.0.3
Membuat dokumen dengan latex ver.0.3
 
Membangun website e-commerce_berbasis_php_dan_my_sql
Membangun website e-commerce_berbasis_php_dan_my_sqlMembangun website e-commerce_berbasis_php_dan_my_sql
Membangun website e-commerce_berbasis_php_dan_my_sql
 
M8 perancangan terinci
M8 perancangan terinciM8 perancangan terinci
M8 perancangan terinci
 

Kompilasi13 ka p

  • 1. UNIVERSITAS GUNADARMA SK No. 92 / Dikti / Kep / 1996 Fakultas Ilmu Komputer, Teknologi Industri, Ekonomi, Teknik Sipil & Perencanaan, Psikologi, Sastra SOAL UJIAN AKHIR SEMESTER Mata Kuliah : P. Teknik Kompilasi (IT-011318) Tanggal : 16 Juli 2013 Fakultas : ILKOM Waktu : 90 menit Jenjang /Jurusan : S1/SI Dosen : - Tingakat/Kelas : 3KA01-21,24-33, 35 Sifat Ujian : Tutup Buku Semester/Tahun : ATA 2012/2013 Jumlah soal : 35 pilihan ganda Pilih jawaban yang paling benar diantara jawaban a, b, c atau d 1. Di dalam proses kompilasi, Semantik Analisis termasuk kedalam tahapan . . . . a. Sintesis c. Back end b. Front end d. Parser 2. Fungsi dari Analisis Semantik adalah . . . . a. Memecahkan program sumber menjadi besaran leksikal/token b. Membangkitkan kode antara c. Memperkecil hasil dan mempercepat proses d. Menyimpan semua informasi yang berhubungan dengan proses kompilasi 3. Hasil dari tahapan analisis pada Semantik Analisis adalah . . . . a. Token c. Parsing b. Intermediate Code d. Tabel Simbol
  • 2. 4. Kegunaan dari Intermediate Code adalah kecuali . . . . a. Melakukan pemeriksaan terhadap kesesuaian tipe dalam statement- statement yang ada b. Intermediate Code lebih mudah dipahami dari pada kode assembly atau kode mesin c. Strategi optimisasi lebih mudah dilakukan pada Intermediate Code daripada pada program sumber dan kode mesin d. Intermediate Code yang dihasilkan dapat digunakan lagi pada mesin lainnya 5. Macam-macam Intermediate Code kecuali . . . . a. Notasi Postfix c. Notasi N-Tuple b. Syntax Tree d. Notasi Token 6. Berdasarkan ekspresi di bawah ini, maka notasi postfix-nya adalah . . . . (a+b)*c a. (a+b)c* c. *cab+ b. (ab+)c* d. ab+c* 7. Fungsi dari Analisis Semantik adalah . . . . a. Memecahkan program sumber menjadi besaran leksikal/token b. Memperkecil hasil dan mempercepat proses c. Membangkitkan kode antara d. Menyimpan semua informasi yang berhubungan dengan proses kompilasi 8. Hasil dari tahapan analisis pada Semantik Analisis adalah . . . . a. Parsing c. Intermediate Code b. Token d. Tabel Simbol
  • 3. 9. Kegunaan dari Intermediate Code adalah kecuali . . . . a. Intermediate Code yang dihasilkan dapat digunakan lagi pada mesin lainnya b. Melakukan pemeriksaan terhadap kesesuaian tipe dalam statement- statement yang ada c. Strategi optimisasi lebih mudah dilakukan pada Intermediate Code daripada pada program sumber dan kode mesin d. Intermediate Code lebih mudah dipahami dari pada kode assembly atau kode mesin 10. Macam-macam Intermediate Code kecuali . . . . a. Notasi Postfix c. Notasi N-Tuple b. Notasi Token d. Syntax Tree 11. Berdasarkan ekspresi di bawah ini, maka notasi postfix-nya adalah . . . . (a+b)*c a. (a+b)c* c. ab+c* b. (ab+)c* d. *cab+ 12. Perhatikan potongan program di bawah ini ! If a>b then a:=5 else b:=10 Maka notasi postfix-nya adalah . . . .
  • 4. a. (1) > b. (1) a c. (1) > d. (1) a (2) b (2) > (2) a (2) b (3) a (3) b (3) b (3) > (4) goto 11 (4) 13 (4) BZ (4) goto 11 (5) BZ (5) a (5) goto 11 (5) BZ (6) := (6) := (6) a (6) a (7) 5 (7) 5 (7) 5 (7) 5 (8) a (8) BR (8) := (8) := (9) goto 14 (9) 8 (9) BR (9) goto 14 (10) BR (10) b (10) b (10) BR (11) := (11) := (11) goto 14 (11) b (12) 10 (12) 10 (12) := (12) 10 (13) b (13) BZ (13) 10 (13) := (14) (14) (14) (14) 13. Di dalam notasi postfix jika potongan program percabangan berada pada kondisi yang salah, maka akan diberikan ekspresi . . . . a. BZ c. BS b. BR d. BX 14. Di dalam Intermediate Code bila baris instruksi yang ada terdiri lebih dari 1 tuple maka dapat diselesaikan dengan menggunakan notasi berikut kecuali . . . .
  • 5. a. N-Tuple c. Triple Notation b. Notasi Postfix d. Quadruples Notation 15. Bila diberikan ekspresi seperti berikut ! WHILE <eks> DO <statement> Maka bila diubah kedalam notasi postfix menjadi . . . . a. <eks> <label 1> BZ <statement> <label 2> BR b. <label 1> <eks> BR <label 2> <statement> BZ c. <label 1> BZ <eks> BR <label 2> <statmenent> d. <statmenent> BR <eks> <label 1> BZ <label 2> <statement> 16. Perhatikan statement berikut ini ! z1 := b * c z2 := a + z1 x := z2 Jika statement diatas diubah menjadi kode antara dalam bentuk Triples Notation menjadi . . . . a. (1) LDA b c. (1) :=, *, a, b, z1 (2) MUL c (2) BZ (3) STO z1 (3) :=, +, a, z1, z2 (4) LDA a (4) BR (5) ADD z1 (5) :=, x, z2
  • 6. (6) STO z2 (7) LDA z2 (8) STO x b. (1) *, b, c, T1 d. (1) *, b, c (2) +, a, T1, T2 (2) +, a, (1) (3) :=, T1, T2, x (3) :=, x, (2) 17. Perhatikan statement berikut ini ! A := B*C+D-E/F*G Jika statement diatas diubah menjadi kode antara dalam bentuk Quadruples Notation akan menjadi . . . . a. (1) *, B, C, T1 c. (1) *, B, C, T1 (2) +, C, D, T2 (2) *, F, G, T2 (3) -, D, E, T3 (3) /, E, T2, T3 (4) /, E, F, T4 (4) +, T1, D, T4 (5) *, F, G, T5 (5) -, T4, T3, A b. (1) *, F, G, T1 d. (1) *, B, C, T1 (2) *, B, C, T2 (2) /, E, F, T2 (3) /, E, F, T3 (3) *, T2, G, T3 (4) +, C, D, T4 (4) +, C, D, T4 (5) -, T4, T3, A (5) -, T4, T2, A 18. Diketahui tata bahasa G_3 berikut aturan semantiknya untuk pengecekan tipe variabel yang dipakai dalam suatu program. D → T L {L.in := T.type;}
  • 7. T → int {T.type := integer;} T → real {T.type := real;} L→ L1 ‘,’ id {L1.in:=L.in; addtype(id.entry, L.in);} L → id {addtype(id.entry, L.in);} Aturan sematik berikut adalah aturan semantik dengan pendekatan yang disebut sebagai: a. Recursive descent b. Translation scheme c. Syntax directed translation d. Shift reducing 19. Annotated parse tree untuk kalimat input: int a,b berdasarkan tata bahasa G-3 dengan aturan semantik sebagaimana pada soal no.18 adalah sebagai berikut: a. Tree b. tree D L ‘,’ L b int a T T.type = int D L.in = addtype() ‘,’ L.in = int; b int a T D L ‘,’ L b int a
  • 8. c. tree d. Tree 20. Dependency graph untuk kalimat input int a, b adalah sebagai berikut: a. Graf b. Graf T.type L.in = int; L.in = int; b a int addtype() addtype() D L ‘,’L bint T T.type = int D L.in = int; addtype() ‘,’ L.in = int; addtype() b int a
  • 9. c. a dan b benar d. a dan b salah 21. Diketahui tata bahasa G_3 berikut aturan semantiknya untuk maksud yang sama sebagaimana pada soal no.18, namun ditulis dengan translation scheme, maka aturan yang benar adalah: a. Aturan semantik (a) D → T L {L.in := T.type;} (b) T → int {T.type := integer;} (c) T → real {T.type := real;} (d) L→ L1 ‘,’ id {L1.in:=L.in; addtype(id.entry, L.in);} (e) L → id {addtype(id.entry, L.in);} b. Aturan semantik (a) D → TL {L.in := T.type; {T.type := integer;} {T.type := real;}} (b) T → int (c) T → real (d) L→ L1 ‘,’ {L1.in:=L.in} id {addtype(id.entry, L.in);} (e) L → id {addtype(id.entry, L.in);} c. Aturan semantik (a) D → T{T.type := integer;} {T.type := real;} L {L.in := T.type;} (b) T → int (c) T → real (d) L→ L1 ‘,’ {L1.in:=L.in} id {addtype(id.entry, L.in);} (e) L → id {addtype(id.entry, L.in);} d. Aturan semantik (a) D → TL {L.in := T.type;} (b) T → int {T.type := integer;} (c) T → real {T.type := real;} (d) L→ L1 ‘,’ {L1.in:=L.in} id {addtype(id.entry, L.in);} (e) L → id {addtype(id.entry, L.in);} 22. Perhatikan cuplikan program berikut: A := B + 10 * 4; ..... (1) C := B + D; ...... (2) F : = B + D – G; ...... (3) FOR I := 1 to 100 DO ...... (4) BEGIN X := X + I; ...... (5) A : = A + 1; ...... (6) a
  • 10. B : = 7; ...... (7) END; Statement no (1) dapat dioptimasi secara lokal dengan cara : a. Loop Rolling b. Redundant-Subexpression Elimination c. Folding d. Frequency Reduction 23. Perhatikan cuplikan program berikut: A := B + 10 * 4; ..... (1) C := B + D; ...... (2) F : = B + D – G; ...... (3) FOR I := 1 to 100 DO ...... (4) BEGIN X := X + I; ...... (5) A : = A + 1; ...... (6) B : = 7; ...... (7) END; Statement no (2) dan (3) dapat dioptimasi secara lokal dengan cara : a. Folding b. Redundant-Subexpression Elimination c. Loop Rolling d. Frequency Reduction 24. Perhatikan cuplikan program berikut: A := B + 10 * 4; ..... (1) C := B + D; ....... (2) F : = B + D – G; ....... (3) FOR I := 1 to 100 DO ...... (4) BEGIN X := X + I; ....... (5) A : = A + 1; ....... (6) B : = 7; ....... (7) END;
  • 11. Statement no (6) dapat dioptimasi secara lokal dengan cara : a. Redundant-Subexpression Elimination b. Strength Reduction c. Loop Rolling d. Frequency Reduction 25. Perhatikan cuplikan program berikut: A := B + 10 * 4; ...... (1) C := B + D; ....... (2) F : = B + D – G; ....... (3) FOR I := 1 to 100 DO ...... (4) BEGIN X := X + I; ....... (5) A : = A + 1; ....... (6) B : = 7; ....... (7) END; Statement no (7) dapat dioptimasi secara lokal dengan cara : a. Strength Reduction b. Frequency Reduction c. Loop Rolling d. Redundant-Subexpression Elimination 26. Berikut ini proses-proses yang dilakukan saat pernyataan sebuah iterasi teridentifikasi dalam program sehubungan dengan optimalisasi program, kecuali: a. Perubahan nilai pada variabel loop harus selalu dijaga. b. Perlu dilakukan inisialisasi pada variabel loop c. Dilakukan pengujian terhadap variabel loop apakah sudah mencapai kondisi terminasi d. Adjustment yaitu penambahan atau pengurangan nilai pada variabel loop 27. Diketahui sebuah cuplikan program berikut : J := 7; IF J < 5 THEN K : = K -1; Pada optimasi Global ini disebut :
  • 12. a. Unreachable code b. Unused Parameter c. Unused Variable d. Variable tanpa nilai awal 28. Berikut ini kegunaan Tabel Informasi pada model kompilasi, kecuali: a. Mempermudah pembuatan dan implementasi dari semantic analyzer b. Untuk membantu pemeriksaan kebenaran semantik dari program sumber c. Untuk membantu dan mempermudah dalam pembuatan intermediate code dan proses pembangkitan kode. d. Membantu dalam melakukan pemilahan statement program ke dalam bentuk token-token 29. Tabel informasi atau tabel simbol dibuat pada saat tahap berikut: a. Pembangkitan Kode b. Analisis Semantik c. Analisis Sintaksis d. Analisis Leksikal 30. Field dalam Tabel Identifier yang menunjukkan informasi obyektif berupa prosedur, fungsi, tipe, variabel atau konstanta adalah: a. Nama Identifier b. Tipe dari Identifier c. Level Identifier d. Jenis dari Identifier 31. Karakter-karakter yang merupakan konstanta merupakan elemen dalam tabel berikut: a. Tabel Real b. Tabel Display c. Tabel String d. Tabel Array 32. Pengisian tabel display dilakukan dengan konsep berikut: a. Array
  • 13. b. Parsing c. Grammar d. Stack 33. Berikut ini merupakan tabel-tabel yang digunakan saat mencari kelengkapan informasi suatu identifier, kecuali: a. Tabel Identifier b. Tabel String c. Tabel Real d. Tabel Array 34. Diketahui himpunan produksi sbb: S → aS S → aB B → bC C → aC C → a Himpunan produksi di atas akan menghasilkan bahasa : a. { | n,m >=1} c. { | n,m >=1} b. { | n,m >=1} d. { | n,m >=1} 35. Jika di ketahui state diagram sebagai berikut : String yang dapat di terima (accept) adalah : a. 10011110 c. 00110101 b. 1010011 d. 1110011