You are on page 1of 5

COMPILADOR Y TRADUCTORES Concepto.

Un compilador es un programa informtico que traduce un programa escrito a un lenguaje de alto nivel a otro lenguaje de bajo nivel, produciendo un programa equivalente que puede ser leda por un microprocesador. Lenguaje de mquina (lenguaje binario). Es un conjunto de smbolos directamente interpretable por una mquina. Un lenguaje es un conjunto de smbolos. Lenguaje de alto nivel es cuando est cerca de nosotros. Lenguaje de alto nivel = (natural) Concepto. - el lenguaje de alto nivel es un lenguaje cuya caracterstica es la semejanza con el lenguaje natural. (Lenguaje de las personas). Lenguaje de bajo nivel (se asemeja a la mquina) un lenguaje de bajo nivel es un lenguaje que tiene gran semejanza con el lenguaje de mquina. Compilador = cuando el lenguaje de alto nivel a bajo nivel. Traductor = cuando el lenguaje de bajo nivel a alto nivel. COMPILADOR Partes o funciones: El anlisis La sntesis ANALISIS: 3 etapas 1. Anlisis lxico 2. Anlisis sintctico 3. Anlisis semntico
El anlisis lxico: consiste en la traduccin del cdigo fuente a elementos lxicos.

Verifica los componentes lxicos Anlisis sintctico: consiste en el agrupamiento d elementos lxicos en frases gramaticales. Verifica qu tenga sentido la sentencia

Anlisis semntico: consiste en la validacin de dichas frases gramaticales o sentencias. Verifica la valides de las operaciones TOKEN: elementos lxicos (smbolos en la programacin) Ejemplo A = B + C TODOS LOS SIMBOLOS SON TOKEN

Las Palabras reservadas tambin son TOKEN. ( if , while , for ,etc.) SINTESIS.- consiste en producir un cdigo objeto o BYTECODE que ser interpretado por una maquina. CODIGO OBJETO.- es un fichero lista para ser ejecutado por la maquina. Durante el proceso de compilacin se crea 2 tablas: 1. TABLA DE SIMBOLOS 2. TABLA DE ERRORES Tabla de smbolo.- es una estructura de datos q contiene informacin de todos los elementos lxicos del cdigo.

EL COMPILADOR PARA HACER EL ANALISIS LEXICO UTILIZA LA TABLA DE SIMBOLOS

TABLA DE SIMBOLOS

NOMBRE A B

POSICION 1 2

TIPO INT STRING

MEMORIA ASIGNADA: 0 1

2 Valor la variable. 3 4 5 (Posicin)

TABLA DE ERRORES.- es una estructura de datos q almacena informacin sobre los eventos durante la compilacin. TABLA DE ERRORES CODIGO 1 MENSAJE variable duplicada

Constante.- Es una variable que su valor no puede cambiar. Variable.- Si puede cambiar o asignarle otro valor. Optimizacin.- Es el proceso por el cual se mejora la calidad del fichero ejecutable. Optimizacin(dos tipos) 1. optimizacin de velocidad. 2. Optimizacin de tamao. Optimizacin de velocidad. -Es el tipo de optimizacin que hace que un fichero se ejecute ms rpidamente. Optimizacin de tamao. -Es el tipo de optimizacin que hace que un fichero sea lo ms pequeo posible. Tipo Int Float String Tamao (bytes) 4 8 N Tiempo ejecucin Rpido Lento lento

unit1.cpp codigo unit1 intermedio objeto proyecto1.exe ejecutable if while repeat loop instrucciones bsicas de un compilador son if ( condiciones)

while (bucles,iteracciones) las demas for do loop repet case son solo variaciones instruccin especial goto ( ir a ) (saltos) < go to > sirve para saltar de una lnea a otra es una instruccion para realizar saltos en la ejecucin de un programa ejemplo: 1LEER (A) 2LEER (B) 3IF ](A>B) 4 MOSTRAR(A) 5 ELSE 6 MOSTRAR (B) 7 FIN 7FIN 1 LEER (A) 2LEER (B) 3 IF (B>A) GOTO 6 4 MOSTRAR (A) 5GOTO (7) 6 MOSTRAR

1INT i=0; 2while (i<10) { 3show message (); 4i++

1int i=0; 2 show message (); 3i++; 4if (i< 10) goto 2

5} Dim x as integer; Dim paises(2) As String;

5 fin

Llena el vector con datos paises(0) = "Argentina"; paises(1) = "Per"; paises(2) = "Brasil"; Recorre los elementos del vector x= 0 while x > 2 MsgBox "Nombre del pas : " & paises(x) x = x+1 end while

dim x as integer dim paises (2) as string paises (0) = "bolivia" paises (1)= "peru" paises (2)= "mexico" x= 0 msgbox "nombre del pais: " & paises(x) x= x+1 if x < 3 goto 7 fin

You might also like