Organizacion Del Computador

Páginas: 8 (1764 palabras) Publicado: 1 de junio de 2012
UNIVERSIDAD ANDINA DEL CUSCO ORGANIZACIÓN Y ARQUITECTURA DEL COMPUTADOR II GUIA DE LABORATORIO
ECP 1 de 9

I.

TEMA : INVOCACION DE FUNCIONES ESCRITAS EN ENSAMBLADOR DESDE C

II.

OBJETIVO DE LA PRACTICA Al finalizar la presente práctica, el estudiante: 1. Comprende los mecanismos de integración de programas escritos en ensamblador y C 2. Escribe programas en C que utilizan módulosescritos en ensamblador.

III.

TRABAJO PREPARATORIO. Para un trabajo con mejores resultados, es imprescindible que el estudiante: 1. Revise la arquitectura de los procesadores X86 2. Tenga conocimientos básicos de programación en el lenguaje C.

IV.

MATERIALES. Para el desarrollo de la presente práctica es necesario contar con: 1. Computador con arquitectura x86. 2. Sistema operativo Linuxinstalado en el computador o en su defecto un liveCD o liveUSB con las herramientas de compilación y programación pre instalados. 3. Compilador Nasm 4. Compilador GCC

V.

MARCO TEORICO

El uso de módulos escritos en ensamblador se justifica por la necesidad de mejorar el tiempo de ejecución de los programas. Los lenguajes de alto nivel facilitan el trabajo de escribir programas al incorporarlibrerías para la mayor parte de las necesidades de los programadores, sin embargo, esto trae como consecuencia la pérdida de eficiencia en tamaño y velocidad de los programas resultantes. Por otro lado, todo programa debe pasar por un proceso de compilación para poder ser ejecutado por el computador. En ese proceso, la calidad de los programas obtenidos depende significativamente de lascaracterísticas del compilador y de sus mecanismos de optimización. Para un mejor control de los programas críticos, puede ser necesario escribir los programas o las partes más importantes de estos en ensamblador. Esto es cierto sobre todo cuando se debe escribir aplicaciones que tengan por propósito procesar datos a altas velocidades y de manera eficiente en cuanto al uso de recursos.

UNIVERSIDADANDINA DEL CUSCO ORGANIZACIÓN Y ARQUITECTURA DEL COMPUTADOR II GUIA DE LABORATORIO
ECP 2 de 9

Es conveniente tomar en consideración que los lenguajes de alto nivel son adecuados para mejorar la productividad de los programadores, por lo que la combinación de ensamblador y los lenguajes alto nivel se debe realizar de acuerdo a las metas de diseño de las aplicaciones.

INVOCACION DE PROCEDIMIENTOSDE ENSAMBLADOR DESDE C

DECLARAR EL MODULO Para invocar a un módulo en ensamblador desde C se debe declarar el mismo en el archivo fuente de C
extern NombreDeModulo(, …);

En la llamada se debe especificar el tipo de datos que el módulo devuelve o void, si el módulo es un procedimiento. Si el módulo requiere parámetros, sus tipos deben declararse de acuerdo a la cantidad de parámetrosrequeridos. Por ejemplo, si un módulo denominado fnSuma requiere dos parámetros de tipo entero y devuelve un valor también de tipo entero; entonces este se declararía así:
extern int fnSuma(int, int);

INVOCAR EL MODULO Dentro del programa en C, la invocación al módulo se realizaría de acuerdo al siguiente criterio: Si es un procedimiento, será suficiente invocar el módulo, por ejemplo:
retardo();Si es una función, se debe leer el valor devuelto en una variable, como se muestra en el siguiente ejemplo:
X = fnSuma(par1, par2);

PASO DE PARAMETROS A MODULOS EN ENSAMBLADOR Cuando se invoca un módulo que requiere parámetros, estos son cargados por el programa que hace la llamada en la memoria pila y luego se ejecuta la instrucción CALL, la cual deposita en el tope de la pila la direcciónde retorno del programa principal. Por esta razón, al

UNIVERSIDAD ANDINA DEL CUSCO ORGANIZACIÓN Y ARQUITECTURA DEL COMPUTADOR II GUIA DE LABORATORIO
ECP 3 de 9

momento de leer los parámetros en el módulo de ensamblador se debe tener cuidado de no perder la referencia a la dirección de retorno, pues de ser así, no podríamos volver al programa principal. Se debe tomar en cuenta que los...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Organizacion del computador
  • organizacion de las computadoras
  • Organizacion Computadoras
  • organizacion de las computadoras
  • Organizacion Del Computador
  • organización de computadoras
  • Organizacion de las computadoras
  • Organización de Computadoras

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS