Lexical analyzer
Syntax analyzer
Intermediate code generator
Optimizer
Code generator
Structure of Compiler: Phases
Semantic analyzer
Position := Initial + Rate * 60
T1  := Id3 * 60.0
Id1 := Id2 + T1
Id1 := Id2 + Id3 * 60
fmul R2 , #60.0
fmov R3 , Id2
fmov R2 , Id3
fadd R2 , R3
fmov Id1, R2
:=
Id1
Id2
Id3
+
*
60
:=
Id1
Id2
Id3
+
*
60
IntToReal
T1  := IntToReal(60)
T2  := Id3 * T1
T3  := Id2 + T2
Id1 := T3
3/17