• Tidak ada hasil yang ditemukan

Teknik Kompilasi. Hari Soetanto Teknik 1

N/A
N/A
Protected

Academic year: 2021

Membagikan "Teknik Kompilasi. Hari Soetanto Teknik 1"

Copied!
60
0
0

Teks penuh

(1)
(2)

• • !""#

!

"

$ !""%

#

& ' !"""

$

( ' ) ' * $ + ,---$ " % . / . ) ) 0

(3)

) 2 1 3 13 3 ' 4 / 5

(4)

! # ! &$ !' ! % % 6 7 8 6 . / 9 : ; ( )! . 7 8 7

/

6

8

* ; 5 6 9: ; 4 <2'& 6 6 6 5 9 6 6

(5)

( !. 6 ) : / = •

'

*

%

• ) > : + ; • ) : - ! • < 6 6

:

• ) ) 6

ERROR

MESSAGES

Compiler

&* #

&+

$

Source

Program

(6)

4 ) ?

,

: 5 6 : 9 : 6

Bits on magnetic disk

0 1

The Bit

The Byte

A byte is 8 binary digits, or cells.

Bits on magnetic tape

In a 16 megabyte memory, there are 16 million of these 8-bit structures.

Bytes in memory

1955

2,000 bits per sq. in.

1995

250,000,000 bits per sq. in.

1 1

0 0 0 1 0 1

The bit is the smallest element of computer storage. It is a positive or negative magnetic spot on disk and tape and charged cells in memory.

(7)

1998 - billions of bits per second

0 1 0 1 1 0 1 1 0

010101011100101 1010

Switch (transistor)

1945 - 75 bits per second

% * % - " % ( • ) 7 8 • 5 : 5 :5 o % ( 75 / ' 8 70 9 8 7 ' @ A8 • 7 8 • / 6 • ) 4 6 7 8 6 6 B 5 6 ) 6 / 6

(8)

./

4 6

( C. 6 0/

6

( C. 6 1/ ! <

6

:

E

4 6

E 1

#2 3 & ,

3

(9)

6 : 6 B * • 6 • • ) " • ? 5 • > : • 0 * % 4 5 6 • 2 6 • 0 7 8 • 5 • ? : 1

(10)

* • ? > 7 $ : 8 • 4 ! - , ! 6

Po

P

1

P

2

(11)

% % "' $ <0 4? / F!- ) CD%%,GGC (4/4 4 ' <5 H <5F ,CGGC '2 ' ( ( ,CCDC (4/4 ( < ' <0

(12)

? 6 9 6 6 7 8 B • / 6 : 6 • / 7 8 ; :; : : 9 : • / I#:I" 6 D • • !"I") 5 1 5 • 7!"#-8 ; 1 ) 07 0 8 * J K *#+! J : K # J : K J K L J K7J : K

(13)

J K J5 K L J5 K J ,K J K J5 K J; K L J K J; K L*L M L 9 J !K 3 L : L F J ,K :L E L > J K J N K L J N K J N K J N K J5 K J N K J K L J N K J K J5 K J K L J K J5 K J K -L!LM L" ) .F!B ) .F 3 , '

(14)

.( % ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; * $ % 3 % %"

&

1 5

1

;

?

/ C & 0 70 8 B 0 70 8 + 0 7 0 8 α αα α ; β ββ β ; / , 10 9 αααα ; / ! 1 ; 2 ) <αααα< =8 <ββββ< / -? > > / / )

(15)

+ • &>? . / → • .> 1 ;. 6 → 0 → 0 • 0 > 1 5 . & ; )→ 0 →) • 1>& . & ! → → 5 → 5 → % 6 • αααα →→→→ ββββ α > β • α : β : • : : : 6

(16)

• ? 5 7 8 : 5 7 ) 8 • . / → / '→ / L / 3 ' ' / ' / 3 '

(17)

) 6 6 6 • 1 •

/

• < 5 :O -:" < / 2? 6 < ? 9

S

ID

INT

PLUS MINUS

+

-

huruf Digit Huruf, Digit Digit Blank

(18)

* 4* % > 6 • ) 0 • ) 0 1 ((8 → < = ? @A -. '→ / L /3' L /:' / → ) 0 ' ..FJ/K L J/K 3 J'K L J/K : J'K / ..F

(19)

" 2 ) 0 ) • 7 8 > • 6 • 2 '→ / L /3' L /:' ) 0. J) K ..F)'(< J K @ ' <42 J KA' '! ! &$ !'# $ 7 8 ? 0 :5 < <' 7 ; ' ; 8

BEGIN Statement END

(20)

% ( I. • 2 1 O F 1 O < 5 6 : • O 5 5 > 7 6 8 • : > 6 • 7 8 : ' 2 " 4 6 " 2 " 4 6 ! & B + & ,

(21)

' 2 " 4 6 ::: 1 O < 1 6 : " • 5 • 5 : • 6 : • • • : 9 5 • / . 5 • . ; 7 6 1 8 ( % % • !

9

<0 '2 ' )'(< ' 7 8 < /'('&7 8 < / 024 / 7) 8 • ( ) 7 8 75 >& 8 7 >5 8 • & 74 73 : E >8 7JFK 8 • 7 ) > :

(22)

' 2 " : • !. (8 10 C D ./E-6 : 9 5 → 5 → .F → C, 6 → 3 < 5 → → E >5 → ! G • •

$

"

! ; , C D • .

( !

? * 3#

8

B • 5 : . C ( ,# ! ,-!

(23)

3# ,! ! ! 7 ,% / :

1

: < 6 < 5 6 7 8 7 8 7 8

(24)

" 2 "B ) : 1 / 1 . • : 17 18

1

• ( . : 5 • ( 1 • : : 7 8 • 1 •

"

P Q 6 • / . 4 C * 6 D 4 C 6 • . = ?-= ? )= 2 ?

(25)

J'1 K J/ K J K D J0 K J5 K 4J 1 K 6 4J'1 K6 J'1 K C J K J'1 K C J K J K J5 K J K J5 K J5 K J5 K * " 2 • > 7 1 > 8 :

;

6 : • . → )

(26)

) ) ) • . • 7

5

;

8 . ; 7 8 • 7

;

8. ; 7 8 • . • 1 5 . → L → L • . FK FK FK FK FK • . FK FK FK

(27)

• . :K ) L :K L L ) :K L L )) ) ) ) ) ) )

(28)

$ C . • $ ' • • % 6 . • >

5

9 .

)

>

. )

0

. &

;

• * >

5

( * • • : 1 • ) 6 7 8 • : 9 : • → L ) → L )→ L

(29)

• P Q 78 78 78 / 6 78 7;8 7;8 7;8 ) ) / 6 7;8 : >

>

• 6 79 8 • • ) • ( &

5

5 5

'

:

(30)

> / > (F7R/ 8 RF7S'TT/TT0T8 / 7; 8 /F7STTETT>TT3TT:T8 / FT'T 9 >

D

% 78 ! '→ / L / 3 ' L / : ' / → 0L 0E / L 0>/ 0→ 7 8 0 ' → / L '3/ L ':/ / → 0L /E 0L / >0 0→ 7 8 • 5 1 ' → '3/ L ':/ L / / → /E 0L / >0L 0 0→ & 5 % % 5 7 8 ; % %

(31)

βF ; . → )→ ) 5 → β 5 < . → )→) 5 5 ( 1 5 ( . → → L ε

(32)

• 5 B

%

%

→ α! L α, L L α

%

% % → β! L β, L L β • : 5 . ! → β! U Lβ, U L Lβ U , U→ α! Lα, L L α C U→ α! U L α, U L L α U • ; U! U, ; 5 ( / ) 1 5 → L L L 55L 5 → → → → < & . α!F α,F 5 → L L 55 & .β! F β, F βCF55 2 5

(33)

! →

9.

L

9.

L 55

9.

,

/

U! → L C U! →

9.

L

9.

5 ) . → L L 55 →

9.

L

9.

L 55

9.

U! → L U! →

9.

L

9.

• 5 5 9 • 6 9 7 8 • 5 ( 5

5

• 1 5 • ; • ) 1 ; > • 5 ; 9

(34)

• 6 7 8 7 8 • ) • 5 • • . .F7 3)8 E 73 8 • : P.FPP3Q PEQ : • ? : ? . • ; 5 • ; :; • • •

5

(35)

. • : 7 8 o % 6 5 o 5 •

:

B • 1 !

5

• ) 6

<

7

(36)

<

• 6 6 • 2

<

• 4 2 7 8 • < • , 9 5 "

2

>

& !F J4 K J4 K J4 K . 7 3 8 E 7 3 8 51 3 3 E 6 51 ! J 1 K 3# J !K #' #J ,K

(37)

51 6 B J 1 K J !K*9J !K J ,K * J ,K )U . ) 5O 7 8 )&. . ! K 3# .F #' # .F 51 !! !, !C K !D ,, !I )U !# !% !G .F !" ,-,I ,! )& ,, ,C ,D .F ,I 1 7K 8 ,, ) 1 7K 8 6 !#:!G ,I . G3!'#J 1 K &J K 51 6 B J 1 K J !K*9J K J ,K *

(38)

51 !-!! ! !, .F !C !D I !I J !# ,# !% )U !G !" ,-! ,! ! ,, .F ,C ,D !C ,I)& ! '# & !& 5 J K J K J K . .F E 3 ) >' * . ! E , >) ' C 3 7!8 7,8 D .F 7C8 7 8 6

(39)

( <0V K W/ ' V .F : '2 ' V .F 3 < . ! K V W , )U 7!8 7#8 ! # C : D .F V 7C8 I )& 7G8 # 3 % .F V 7#8 % % - % % %

!

" % 7 2 < B .F) 3 E >' 0.F E

2

<

2

'

! E ! ! , > 7!8 ' , , C 3 ) 7,8 C C D .F 7C8 D D I .F 0 7!8 I ! # I

(40)

H 0 H J K J K J K J K &

;

; . .F E 3 ) >' * . ! E /! , > ) ' /, C 3 /! /, • 7 8 • < 5 • 73)8E73 8 6 H . ! 3 ) /! , 3 /, C E /! /, /C . 2 7 8 ) 7 6 )8 /4 /! 7 /!8

(41)

/4 /, 2 /! ?2 /, /4 /C 6 . 2 ) /4 /! 2 ?2 /! /4 /, , % Source Program

X = Y + X LeksikalAnalisis Analisis Sintaksis Code Generator dan Analisis sematiks Tabel Simbol Token-token Id1:=Id2+Id1 LDA A ADD Y STO X <assign> Id1 := <Expr> Id2 + Id1

(42)

• • • & • ' & ; • ' • > 6 / ' /' / • 6 .FV 3 7) E 73 8 •

/

. B F! IE -%G

R

5

. ) .F) 3 ! 5 2 : .

(43)

. • • •

5

• . !#, * . ? 9 5 • . F!#, F

9

5

5

F6 )

% >

% "

%

. )

2

.

7 5 > 8 4 . >

%

"

-

%

%

7 8 9 % > % " & B ' & ; . & .

(44)

P Q ) 7 8 ) 6 6 6

$ %

3

& ; / 6

;

"

2

5 "

.F 3 ! ) .F) 3 !B .F 3 ! B 7 ) 08

J

K

I -

K B J

K

B

=

P

7

Q

# 5 ".

$

6

(45)

3# 6 7B8 7 . J K J 1K J K 2 5 5 " ) . ) .FP) 2 Q 9 ; ) ; ) # 3 > # ; 7 5 8 / 1 & > G3!'# J!

(46)

< B 1.FV 3 ! B B 2 5 / 5 .

5

; . .F-B '

5

) & . 5 . G3!''# F! 4 5 6 G3!'#

(47)

4 4 2 4 (

&

6 o 4 O o < 4 O 74 4 8

&

' %

4 2 . . ; . .F0 C 1 3 ) .FJ3 ) I , 3 C

>

2

#

. .F* C V .FW3 * C

(48)

4 <

'

. ; . < 9 : : ; 6 . ; 6 4 6 7 8 . & !(8 . 0 & K!L(8 M7 6 K.L(8 M7 K0L(8 M7 0 H & . 6 04&<.F! !- 4 F(8 J )'(< 04&<.F! !- 4 F(8 J )'(< .F 3 ! .F 3 ! ' . ' . &

(49)

. 9 6 .F 3 ! < 78

&

+

4 6 6 B ) 7 8

N

. . V .F IB <0V F-/ ' .F 3 ! < (8 C . 6 V 6

(50)

-. 7 8 6 7 B < 8B ; 1. B 1.F 3 B 6

O

(

; B ; . .FIB B R

O

(

; 9 9 B ; . .FI .F 3 B B ; 9

*

5

(51)

5 : 5 . 5 / 5 4 6 5 ; ; 5 0 / <5 : < 6 / <5 B 5 5

"(

5 5

%

. ; :; .

(52)

/ <5 : < 5

!

B ? 5 < 5 * 5 B 5 ; / 5 B < 7 8 5 ; 5 7 5 8B 5 ; -? 5 B

5

>

5 <5 5 5 5

B

5 . ; 5 7 8 B R ) . < B V 7U. 8 ; . <

(53)

% 7 -! ) , V C U D / <. X- 1Y 5 . B . B 4 6 . 6 B / . / B 5 . < B . ) B 2 ; . - 1 ; B . < B 6 F7 ; 5 8 / F7 / <5 :

"

5 5 5 . ? /

(54)

< 1 9 * ? 7 F : 9 3 !8 1 O ' O

* %

5 : ) 5 9 > O ; >; O ; R ) . < B V 7U. 8B R . < B ? ) ) * ; F, D R O F, 7 , 8 , 2 F-7 8 C

(55)

5 7 8 ' : B 4 ; 5 ' : . ? :

"

5 : 5 : 5 ' : . ? ) 5

(56)

Soal-soal Latihan Teknik Kompilasi

Soal Multiple choice

1. Yang disebut dengan bahasa mesin adalah suatu bahasa yang: a. Sangat sukar dan sangat sedikit kemungkinannya untuk membuat

compiler dengan bahasa jenis ini b. Fasilitas yang dimiliki lebih baik c. Memiliki ukuran yang relatif besar d. Lebih mudah dipelajari

2. Yang disebut dengan bahasa assembly adalah suatu bahasa yang: a. Sangat sukar dan sangat sedikit kemungkinannya untuk membuat

compiler dengan bahasa ini b. Fasilitas yang dimiliki lebih Sedikit c. Memiliki ukuran yang relatif besar d. Lebih mudah dipelajari

3. Yang disebut dengan bahasa Tingkat tinggi adalah suatu bahasa yang: a. Sangat sukar dan sangat sedikit kemungkinannya untuk membuat

compiler dengan bahasa ini

b. Fasilitas yang dimiliki lebih Sedikit c. Memiliki ukuran yang relatif kecil d. Lebih mudah dipelajari

4. Yang dimaksud dengan BootSrap, adalah a. Bagaimana orang mengerti bahasa mesin b. Penggunaan bahasa tingkat tinggi

c. Untuk membangun sesuatu yang besar dibangun dulu bagian intinya d. Untuk menghidupkan komputer

5. Noam chomsky melakukan penggolongan tingkatan dalam bahasa, dikenal dengan istilah

a. BNF

b. Chomsky Hierarky c. Tata Bahasa

d. Grammar

6. Aturan produksi yang ada menggunakan simbol-simbol: a. α → β

b. A → b c. β → α d. b → A

(57)

a. Tipe 0 b. Tipe 1 c. Tipe 2 d. Tipe 3

8. Menurut comsky terdapat 4 penggolongan dalam aturan produksi, yang termasuk pada kategori Context sensitive: 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

9. Menurut comsky terdapat 4 penggolongan dalam aturan produksi, yang termasuk pada kategori Context Free Grammar: Ruas kiri haruslah tepat satu simbol variable, adalah

a. Tipe 0 b. Tipe 1 c. Tipe 2 d. Tipe 3

10. Menurut comsky terdapat 4 penggolongan dalam aturan produksi, yang termasuk pada kategori Regular: Ruas kanan hanya memiliki maksimal 1 simbol terminal dan diletakkan paling kanan sendiri, adalah

a. Tipe 0 b. Tipe 1 c. Tipe 2 d. Tipe 3

11. Yang dimaksud dengan Diagram State, pada teknik Kompilasi adalah

a. Digunakan untuk mendapatkan token, mempermudah melakukan analisis lexical

b. Digunakan untuk mendapatkan token, mempermudah melakukan analisis syntax

c. Aturan produksi yang dikenalkan oleh comsky d. Simbol terminal

12. Yang dimaksud dengan TOKEN, pada teknik Kompilasi adalah

a. Digunakan untuk mendapatkan token, mempermudah melakukan analisis lexical

b. Digunakan untuk mendapatkan token, mempermudah melakukan analisis syntax

(58)

a. Digunakan untuk mendapatkan token, mempermudah melakukan analisis lexical

b. Digunakan untuk mendapatkan token, mempermudah melakukan analisis syntax

c. Alat bantu (tools) dalam pembuatan parser/ analisis sintaksis d. Simbol terminal

14. Translator yang Source codenya adalah bahasa assembly, dan Object code adalah bahasa mesin, disebut dengan

a. Assembler b. Compiler c. Interpreter d. Suplier

15. Translator yang Source code nya adalah bahasa tingkat tinggi, object code adalah bahasa mesin atau bahasa assembly. Source code dan data diproses berbeda, disebut dengan :

a. Assembler b. Compiler c. Interpreter d. Suplier

16. Translator yang idak 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. Suplier

17. Memgelompokkan program asal/sumber menjadi token disebut dengan a. Scanner

b. Parser c. Lexicer d. Interpreter

18. Yang bertugas untuk memeriksa kebenaran dan urutan dari token-token yang terbentuk oleh scanner, disebut dengan:

a. Scanner

b. Parser

c. Lexicer d. Interpreter

(59)

c. Untuk mengenali makna dari simbol-simbol

d. Memeriksa variabel sudah dideklarasikan atau belum 20. Tugas dari Semantics analyser adalah

a. Mentransformasikan ke dalam bentuk token-token b. Proses pendeteksian token-token

c. Untuk mengenali makna dari simbol-simbol

d. Memeriksa variabel sudah dideklarasikan atau belum 21. Tugas dari Syntax analyser adalah

a. Mentransformasikan ke dalam bentuk token-token

b. Proses pengelompokan token-token kedalam class syntax c. Untuk mengenali makna dari simbol-simbol

d. Memeriksa variabel sudah dideklarasikan atau belum 22. Tugas dari Intermidiate code, adalah

a. Mentransformasikan ke dalam bentuk token-token

b. Proses pengelompokan token-token kedalam class syntax

c. Memperkecil usaha dalam membuat compilator dari sejumlah bahasa ke sejumlah mesin

d. Memeriksa variabel sudah dideklarasikan atau belum 23. Fungsi dari Tabel simbol, adalah :

a. Mentransformasikan ke dalam bentuk token-token

b. Proses pengelompokan token-token kedalam class syntax

c. Memperkecil usaha dalam membuat compilator dari sejumlah bahasa ke sejumlah mesin

d. Menindak lanjuti untuk perbaikan

24. Rekasi-reaksi yang tidak dapat diterima pada suatu compiler adalah; kecuali a. Compiler crash: hang

b. Looping

c. Mengahasilkan obyek yang salah d. Menemukan kesalahan yang pertama

25. Rekasi-reaksi yang benar, tapi kurang diterima pada suatu compiler adalah; a. Compiler crash: hang

b. Looping

c. Mengahasilkan obyek yang salah d. Menemukan kesalahan yang pertama

26. Rekasi-reaksi yang dapat diterima pada suatu compiler adalah; kecuali a. Recovery

(60)

27. Pada teknik Optimasi di tahapan compiler, ada beberapa teknik kompilasi diantaranya adalah dibawah ini: kecuali

a. Dependency optimasi b. Lokal optimasi

c. Global optimasi d. Best Optimasi

28. Tujuan dari dependency Optimasi adalah untuk a. Menghasilkan error kesalahan

b. Mengbetulkan kesalahan

c. Menghasilkan kode program yang kecil dan lebih cepat d. Menghasilkan execute file

29. Yang dimaksud dengan optimasi lokal adalah

a. Optimasi yang dilakukan hanya pada suatu blok daru source code b. Optimasi yang dilakukan dengan cara seperti graph terarah yang

menunjukkan jalur yang mungkin selama execusi

c. Menghasilkan kode program yang kecil dan lebih cepat d. Optimasi yang dilakukan oleh programmer

30. Yang dimaksud dengan optimasi global adalah

a. Optimasi yang dilakukan hanya pada suatu blok daru source code b. Optimasi yang dilakukan dengan cara seperti graph terarah yang

menunjukkan jalur yang mungkin selama execusi c. Menghasilkan kode program yang kecil dan lebih cepat d. Optimasi yang dilakukan oleh interpreter

Referensi

Dokumen terkait

[r]

Berdasarkan uji regresi logistik, diketahui bahwa pendapatan termasuk variabel yang mempengaruhi terjadinya BBLR OR=0,081 artinya pendapatan ibu yang rendah mempunyai peluang

pokok yang tersusun dengan baik, tetapi dalam peroses wawancara seorang pewawancara boleh mengembangkan pertanyaan selagi tidak melenceng atau menyimpang dari

Berkaitan dengan sistem pemerintahan, dalam Islam tercermin sebagaimana pada konsep imamah dimana hal ini secara eksplisit telah diatur dalam siyasah dusturiyah,

Salah satu usaha efektif untuk menjawab permasalahan di atas adalah dengan bisnis yang mudah dan menjanjikan bagi mahasiswa dengan inovasi terbaru jajanan klepon

Salah satu kegiatan yang diprioritaskan untuk menunjang seluruh pelaksanaan diklat-diklat adalah penyusunan buku pedoman penulisan modul, pedoman ini dimaksudkan

--mulai dari Presiden sampai pegawai negeri di tingkat yang terbawah, lembaga-lembaga tinggi negara lainnya, ABRI, kekuatan sosial politik dan organisasi-organisasi

Data statistik perikanan tangkap Provinsi Sulawesi Selatan, menunjukkan laju produksi bagan tancap yang dioperasikan pada perairan Kabupaten Jeneponto cenderung menurun