Академический Документы
Профессиональный Документы
Культура Документы
15/03/2015
ISUTIC-INFORMATICA
PROFESOR
CONTENIDOS
INTRODUCCIN A LA SIGNATURA P3
Objetivos Generales.
Bibliografa bsica
Bibliografa bsica
INTRODUCCIN
Lenguaje de programacin
10100
1101
Lenguaje de mquina
10100
1101
if(c > 0)
c++;
while(i>0)
Comunicacin
Hola
INTRODUCCIN
Lenguaje natural
Compilacin
01101011
11001111
INTRODUCCIN
class Process{
string name;
void Begin(){
Lxico
Conjunto de palabras que forman parte de un lenguaje
especfico.
Gramtica
Conjunto de reglas y principios que gobiernan el uso de un
lenguaje determinado; as, cada lenguaje tiene su propia
gramtica.
INTRODUCCIN
Lenguaje
Lenguaje de programacin
Conjunto de smbolos y reglas sintcticas y semnticas que
permiten la comunicacin con un ordenador.
INTRODUCCIN
Sintaxis
Lenguaje ensamblador
10110000 01100001
INTRODUCCIN
Lenguaje de mquina
Ejemplos
Pascal
Java
C++
C#
Ruby
Python
INTRODUCCIN
INTRODUCCIN
Objetivos
2. Compiladores y Traductores.
3. Estructura de un compilador.
4. Conclusiones.
5. Bibliografa.
SUMARIO
1. Introduccin.
COMPILADORES Y TRADUCTORES
Cdigo
fuente
Traductor
Cdigo
objeto
COMPILADORES Y TRADUCTORES
Traductor
Compilador
Compilacin
Cdigo
fuente
Lenguaje
de
mquina
Ejecucin
COMPILADORES Y TRADUCTORES
Compilador
Ejecucin
Cdigo
fuente
Intrprete
COMPILADORES Y TRADUCTORES
Intrprete
Compilador Hbrido
Cdigo
fuente
Traductor
Bytescode
Compilador
(Mquina
Virtual de
JAVA)
salida
ESTRUCTURA DE UN COMPILADOR
Generacin de
Cdigo Intermedio
Tokens
Anlisis
Sintctico
Optimizacin de
Cdigo Intermedio
rbol Sintctico
Anlisis
Semntico
Cdigo
Objeto
GESTIN DE ERRORES
Anlisis
Lxico
TABLA DE SMBOLOS
Cdigo Intermedio
ESTRUCTURA DE UN COMPILADOR
Cdigo
fuente
Token
Cdigo
fuente
Scanner
Parser
NextToken
TABLA DE SMBOLOS
COMPILADORES Y TRADUCTORES
Token
Lexema
id
num
total
60
COMPILADORES Y TRADUCTORES
Estructura de un Token
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
VALOR1
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
id
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
VALOR2
V A L O R 1
V A L O R 2
Tabla de smbolos
1
id
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
id
2
3
4
id
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
id
2
3
4
id
const
1 ;
COMPILADORES Y TRADUCTORES
V A L O R 1
V A L O R 2
Tabla de smbolos
1
id
2
3
4
id
const
1 ;
COMPILADORES Y TRADUCTORES
1
2
3
4
valor2
id
float
valor1
id
float
const
int
COMPILADORES Y TRADUCTORES
Tabla de smbolos
Anlisis lxico
Token
Cdigo
fuente
Scanner
Parser
NextToken
TABLA DE SMBOLOS
COMPILADORES Y TRADUCTORES
valor2 +* valor3
Scanner
Scanner
Parser
Expresin
Correcta!!!
Parser
Expresin
Incorrecta!!!
COMPILADORES Y TRADUCTORES
Reglas sintcticas
COMPILADORES Y TRADUCTORES
id1
id2
*
id3
=
id1
+
id2
*
id3
EntAReal
1
COMPILADORES Y TRADUCTORES
Anlisis semntico
MSIL
Java Bytecode
Notacin de cudruplos
Notacin polaca
Traduccin Sintctica Directa.
COMPILADORES Y TRADUCTORES
+
(2) temp2 = id3 * temp1
id2
id3
COMPILADORES Y TRADUCTORES
Cdigo de 3s direcciones.
Cdigo intermedio
Cdigo Optimizado
COMPILADORES Y TRADUCTORES
Cdigo Objeto
MOVF id3, R2
MULF #7.0, R2
MOVF id2, R1
ADDF R2, R1
MOVF R1, id1
COMPILADORES Y TRADUCTORES
Tipos de errores
Lxicos
Sintcticos
Semnticos
Lgicos
COMPILADORES Y TRADUCTORES
CONCLUSIONES
CONCLUSIONES
BIBLIOGRAFA
BIBLIOGRAFA
Bibliografa