Академический Документы
Профессиональный Документы
Культура Документы
Compilador
Definicin:
Un compilador es un programa informtico que traduce un programa escrito en
un lenguaje de programacin a otro lenguaje de programacin, generando un
programa equivalente que la mquina ser capaz de interpretar. Usualmente el
segundo lenguaje es lenguaje de mquina, pero tambin puede ser un cdigo
intermedio, o simplemente texto. Este proceso de traduccin se conoce
como compilacin.
Un compilador es un programa que permite traducir el cdigo fuente de un
programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior
(tpicamente lenguaje de mquina). De esta manera un programador puede
disear un programa en un lenguaje mucho ms cercano a como piensa un ser
humano, para luego compilarlo a un programa ms manejable por una
computadora.
Partes del Compilador:
Anlisis: Se trata de la comprobacin de la correccin del programa fuente, e
incluye las fases correspondientes al Anlisis Lxico (que consiste en la
descomposicin del programa fuente en componentes lxicos), Anlisis
Sintctico (agrupacin de los componentes lxicos en frases gramaticales)
y Anlisis Semntico (comprobacin de la validez semntica de las sentencias
aceptadas en la fase de Anlisis Sintctico).
Sntesis: Su objetivo es la generacin de la salida expresada en el lenguaje
objeto y suele estar formado por una o varias combinaciones de fases de
Generacin de Cdigo (normalmente se trata de cdigo intermedio o de cdigo
objeto) y de Optimizacin de Cdigo (en las que se busca obtener un cdigo lo
ms eficiente posible).
Front-end: es la parte que analiza el cdigo fuente, comprueba su validez, genera
el rbol de derivacin y rellena los valores de la tabla de smbolos. Esta parte
suele ser independiente de la plataforma o sistema para el cual se vaya a
compilar, y est compuesta por las fases comprendidas entre el Anlisis Lxico y
la Generacin de Cdigo Intermedio.
Tipos de compiladores
Compiladores cruzados: generan cdigo para un sistema distinto del que estn
funcionando.
Compiladores optimizadores: realizan cambios en el cdigo para mejorar su
eficiencia, pero manteniendo la funcionalidad del programa original.
El Intrprete
Definicin:
En ciencias de la computacin, intrprete o interpretador es un programa
informtico capaz de analizar y ejecutar otros programas, escritos en
un lenguaje de alto nivel. Los intrpretes se diferencian de los compiladores en
que mientras estos traducen un programa desde su descripcin en un lenguaje de
programacin al cdigo de mquina del sistema, los intrpretes slo realizan
la traduccin a medida que sea necesaria, tpicamente, instruccin por instruccin,
y normalmente no guardan el resultado de dicha traduccin.
Usando un intrprete, un solo archivo fuente puede producir resultados iguales
incluso en sistemas sumamente diferentes (ej. una PC y un PlayStation 3).
Usando un compilador, un solo archivo fuente puede producir resultados iguales
solo si es compilado a distintos ejecutables especficos a cada sistema.
Los programas interpretados suelen ser ms lentos que los compilados debido a la
necesidad de traducir el programa mientras se ejecuta, pero a cambio son ms
flexibles como entornos de programacin y de puracin (lo que se traduce, por
ejemplo, en una mayor facilidad para reemplazar partes enteras del programa o
aadir mdulos completamente nuevos), y permiten ofrecer al programa
interpretado un entorno no dependiente de la mquina donde se ejecuta el
intrprete, sino del propio intrprete (lo que se conoce comnmente
como mquina virtual).
Compilacin justo a tiempo
Para desdibujar ms la distincin entre los interpretadores, los interpretadores de
bytecode y la compilacin, est la compilacin justo a tiempo (o JIT), una tcnica
en la cual la representacin intermedia es compilada a cdigo de mquina nativo
en tiempo de ejecucin. Esto confiere la eficiencia de ejecutar el cdigo nativo, al
costo de tiempo de inicio y de un uso creciente de la memoria cuando el bytecode
o el AST son compilados por primera vez. La optimizacin adaptativa es una
tcnica complementaria en la cual el interpretador hace un anlisis de desempeo
del programa que est corriendo (profiling) y compila sus partes ms
frecuentemente ejecutadas a cdigo nativo. Ambas tcnicas tienen algunas
dcadas, apareciendo en lenguajes tales como Smalltalk en los aos 1980.
En aos recientes, la compilacin justo a tiempo ha ganado la atencin de la
mayora de los implementadores de lenguajes de programacin, con Java, Python,
y el Microsoft .NET Framework todos ahora incluyendo JITs.
Tambin puede usar funciones (por ejemplo, la funcin SUM) para calcular
valores en su hoja de clculo. Para ms informacin, vea Crear una frmula
usando una funcin.
Ejemplos
Copie los datos de ejemplo en la tabla siguiente y pguelos en la celda A1 de una
hoja de clculo nueva de Excel. Para que las frmulas muestren los resultados,
seleccinelas, presione F2 y luego ENTRAR. Si lo necesita, puede ajustar el
ancho de las columnas para ver todos los datos.
Frmula
Descripcin
'=A2+A3
'=A2-A3
'=A2/A3
'=A2*A3
'=A2^A3
Frmula
Descripcin
'=5+2
Suma 5 ms 2
'=5-2
Resta 2 de 5
'=5/2
Divide 5 entre 2
'=5*2
Multiplica 5 por 2
'=5^2
Eleva 5 al cuadrado