compiladores - Corporación de Estudios Superiores del Oriente

Anuncio
COMPILADORES
AMPARO CALDERON PEREZ
CORPORACION DE ESTUDIOS SUPERIORES DEL ORIENTE
SARAVENA
2013
COMPILADORES
AMPARO CALDERON PEREZ
TRABAJO DIRIGIDO A:
ING. Jorge Alberto Patiño
CORPORACION DE ESTUDIOS SUPERIORES DEL ORIENTE
SARAVENA
2013
EL PROCESO DE COMPILACIÓN
PROGRAMACIÓN EN C/EL PROCESO DE COMPILACIÓN
Normalmente, a la hora de programar no creamos un único
archivo C .c, sino varios de ellos conteniendo diferentes funciones
del programa. Esto nos proporciona varias ventajas: una mejor
organización del código, una mejor modularidad y, sobre todo, más
facilidad (y velocidad) a la hora de compilar.
El proceso de compilación que hemos tratado hasta ahora se divide
en realidad en dos etapas, que el compilador nos esconde en una:
compilación propiamente dicha y enlazado. En la primera etapa, la
de compilación, nuestro código en C se transforma en código
objeto, es decir, código máquina (instrucciones que el ordenador
puede ejecutar) en ficheros .o, mientras que en la segunda etapa
(enlazado) estos ficheros objeto son unidos entre sí para formar el
fichero ejecutable (normalmente sin extensión en el mundo Unix, o
con extensión .com o .exe en el mundo MS-DOS/Windows).
Archivo: Compilar.png
De esta manera, si no hemos modificado el fichero .c que se
compila a un determinado fichero .o podemos ahorrarnos esa parte
de la compilación cuando hagamos un cambio en otra parte del
programa.
Además tenemos los archivos de cabecera .h, que utilizamos para
definir parámetros que se utilizan en el código (caso
del fuente1.h del ejemplo) o para definir todas las funciones que
vamos a utilizar en todos los archivos .c (caso del cabeceras.h), ya
que si recordamos, las funciones (como todo en C) deben definirse
antes de usarse, y es posible que estén en otro fichero, lo cual
nunca es considerado por el compilador como "antes". Hay que
tener en cuenta que el fichero en el que se encuentra la
función main() llama, necesariamente, a todos los demás
ficheros .c, directa o indirectamente, ya que de lo contrario lo que
tendríamos en esos ficheros sería perfectamente inútil.
Si típicamente compilaríamos el ejemplo con
Los pasos del proceso
Lo primero que le ocurre a un fichero .c de código C es el pre
procesado. En este paso se sustituyen todas las macros y se
eliminan los comentarios. El resultado, si lo vemos
independientemente, es un fichero de código C pre procesado, o .i.
El segundo paso es la compilación propiamente dicha, en el que el
código C pre procesado se convierte en código ensamblador, que si
lo vemos independientemente es un fichero .s.
El tercer paso es el ensamblado del código ensamblador, lo que lo
convierte en código máquina. Un fichero de código máquina
también es llamado fichero objeto, y su extensión típica es .o.
Dado que el camino anterior normalmente convierte un fichero en
un fichero, se suele hacer en un sólo paso, de código C a fichero
objeto.
El último paso es el enlazado de los ficheros objeto en el ejecutable
final.
[editar]Ejemplos
Tomemos el código C más simple posible:
int main(void) /*Ejemplo*/
{
return(0);
}
Al pre procesarlo tendremos:
# 1 "prueba. c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "prueba. c"
int main(void)
{
return(0);
}
EL PROCESO DE COMPILACIÓN EN JAVA
Los programas Java no son ejecutables, es decir que no se
compilan como los programas en C o C++. En su lugar, son
interpretados por una aplicación conocida como la máquina virtual
de Java (JVM). Gracias a ello no tienen por qué incluir todo el
código
y
librerías
propias
de
cada
sistema.
Previamente el código fuente en Java se tiene que pre compilar
generando un código (que no es directamente ejecutable) previo
conocido como bytecode o J-code. Ese código (generado
normalmente en archivos con extensión .class) es el que es
ejecutado por la máquina virtual de Java que interpreta las
instrucciones de los bytecodes, ejecutando el código de la
aplicación. Por esta razón, podemos decir que Java es híbrido,
porque
es
compilado
e
interpretado
a
la
vez.
El bytecode se puede ejecutar en cualquier plataforma, lo único que
se requiere es que esa plataforma posea un intérprete adecuado (la
máquina virtual específica para esa plataforma). La máquina virtual
de Java, además es un programa muy pequeño y que se distribuye
gratuitamente para prácticamente todos los sistemas operativos
como Windows, Mac OS y Unix/Linux. Si deseamos poder ejecutar
aplicaciones Java en nuestra computadora podemos descargar el
Java Runtime Enviroment (JRE), en cambio si deseamos también
programar y compilar nuestros propios archivos escritos en Java
debemos de descargar el Java Developer Kit (JDK). En el JDK
viene
incluido
el
JRE.
En Java la unidad fundamental del código es la clase. Son las
clases las que se distribuyen en el formato bytecode de Java y
éstas se cargan dinámicamente durante la ejecución del programa
Java.
CÓMO: COMPILAR Y EJECUTAR UN PROYECTO EN VISUAL
BASIC
El entorno de desarrollo integrado (IDE) de Visual Studio facilita la
compilación de un proyecto y la ejecución de la aplicación
resultante.
Puede utilizar el depurador integrado en el IDE para depurar su
proyecto mientras lo ejecuta. Para obtener más información sobre la
depuración, vea Depurar la aplicación de Visual Basic y Editar y
continuar (Visual Basic).
Nota
Los cuadros de diálogo y los comandos de menú que se ven
pueden diferir de los descritos en la Ayuda, dependiendo de los
valores de configuración o de edición activos. Para cambiar la
configuración,
elija
la
opción Importar
y
exportar
configuraciones en el menú Herramientas. Para obtener más
información, vea Valores de configuración de Visual Studio.
Para compilar y ejecutar el proyecto actual
 Presione F5 mientras está en el entorno de desarrollo
integrado (IDE) de Visual Studio.
El IDE compila el proyecto y ejecuta la aplicación dentro del
depurador de Visual Studio.
Para compilar y ejecutar el proyecto actual desde el menú
 En el menú Depurar del IDE de Visual Studio, elija Iniciar
depuración.
El IDE compila el proyecto y ejecuta la aplicación dentro del
depurador de Visual Studio.
Para compilar y ejecutar el proyecto actual sin depurar
 Presione CTRL+F5 en el IDE de Visual Studio.
El IDE compila el proyecto y ejecuta la aplicación
Descargar