ejemplo práctico de un compilador pequeño
DESCRIPTION
Lenguaje Fuente. Análisis Léxico. Análisis Sintáctico. Generador de código objeto. Lenguaje Objeto. Ejemplo Práctico de un compilador pequeño. ASG VAR = EXP ;. EXP TER REX. REX + EXP | - EXP | VACIO. TER ( EXP ) | VAR | CTE. VAR A | ... | Z. - PowerPoint PPT PresentationTRANSCRIPT
Ejemplo Práctico de un compilador pequeño
Lenguaje Fuente
Análisis Léxico
Análisis Sintáctico
Generador de código objeto
Lenguaje Objeto
Gramática
ASG VAR = EXP ;
EXP TER REX
REX + EXP | - EXP | VACIO
TER ( EXP ) | VAR | CTE
VAR A | ... | Z
CTE 0 | ... | 9
Lenguaje Maquina Objeto:
PUSHC CTE top := top + 1;pila[top] := cte;
PUSHA dir.var. top := top + 1;
pila[top] := dir.var.
LOAD pila[top] := mem[pila[top]]
STORE mem[pila[top-1]] := pila[top];top := top-2;
NEG pila[top] := - pila[top];
ADD pila[top-1] := pila[top] + pila[top-1];top := top-1;
Pila
Variables
Programa