Escolar Documentos
Profissional Documentos
Cultura Documentos
Analisis Leksikal
Object
code
SYNTHESIS
ANALYSIS
Lexical
Analyzer
(Scanner)
Syntactic
Analyzer
(Parser)
Semantic
Analyzer
Intermediate
Code
Generator
Intermediate
code
Code
Generator
Code
Optimizer
TABEL SIMBOL
Definisi
Analysis
Lexical
Token
Contoh :
for I := 1 to max do
x[i] : = 0;
hasil penguraian :
Keyword
= for, to, do
Operator
= :=
identifier
= i, max, x
Puctuation
= ;
Brackets
=[,]
Constatnts = 1, 0
Besaran Leksik
Identifier
Nilai Konstanta
VAR A : INTEGER;
BEGIN
A := A + 2;
END.
VAR
INTEGER
:=
BEGIN
END
Kumpulan state menyatakan satu proses dan aturanaturannya menyatakan kemungkinan-kemungkinan yang
terjadi dalam menyelesaikan proses tersebut.
Accepting state menyatakan state yang diterima (dapat
ditentukan menggunakan directed graph).
10
11
Contoh FSA
;
type
1
var
;
0
;
;
2
var
,
INPUT
Current
state
nothing
type
var
Next state
12
Turbo
INPUT
Curr.
State
Backup
<
>
sp
19
19
19
12
19
14
17
19
20
20
20
20
20
20
20
20
20
20
20
20
20
10
10
11
11
12
20
20
20
20
20
20
20
20
20
20
20
20
20
13
14
20
20
20
20
20
20
20
20
20
20
20
20
20
15
16
17
20
20
20
20
20
20
20
20
20
20
20
20
20
18
19
20
14
Starting state
11.
End of (**)
2.
In identifier
12.
Found :
3.
End of identifier
13.
Token :=
4.
In number
14.
Found <
5.
End of number
15.
Token <=
6.
In { } commat
16.
Token <>
7.
End of { } commant
17.
Found >
8.
Found (
18.
Token >=
9.
In (**) commant
19.
General punctuation
10.
Found * in (**)
20.
General punctuation
State yang tercetak tebal dan garis bawah adalah accepting state.
l = letter (huruf) , d = digit (angka), sp = spasi, p = punctuation mark (tanda
pemisah/ karakter-karakter yang tidak termasuk dalam daftar).
y = yes , artinya bila ada token baru bisa dikenali setelah ada tanda khusus
untuk awal dan akhir, maka pointernya (cp) disimpan, n = no, artinya
pointernya tidak disimpan.
15
Contoh
sp
sp
sp
12
13
19
16