Академический Документы
Профессиональный Документы
Культура Документы
_Gua de Trabajo No 4_
Introduccin a la Programacin en GNU-Assembler
en la Plataforma IA-32 en el Entorno GNU/Linux
Objetivos_
Indicaciones_ A continuacin se presenta una serie de interrogantes, conteste o explique destacando en los
puntos ms importantes, haciendo uso de sus apuntes y material de los libros previamente recomendados.
_Arquitectura de Computadoras_
_04-09-2015_
Al igual que cualquier otra profesin, la programacin requiere de las herramientas adecuadas para realizar el
trabajo. Para crear un buen entorno de desarrollo en lenguaje ensamblador, debe tener las herramientas
adecuadas a su disposicin. A diferencia de un entorno de lenguaje de alto nivel en el que usted puede comprar
un completo entorno de desarrollo. Como mnimo usted debe tener lo siguiente:
Un Assembler
Un Linker
Un Debugger
GNU Assembler
Para crear programas en lenguaje ensamblador, obviamente, necesita alguna herramienta para convertir el cdigo
fuente en lenguaje ensamblador a cdigo de instrucciones del procesador. Aqu es donde entra en juego el
ensamblador.
El ensamblador de GNU
El programa ensamblador de GNU (llamado GAS) es el ensamblador ms popular para el entorno UNIX. Tiene la
capacidad de ensamblar cdigos de instruccin de varias plataformas de hardware diferentes.
_Arquitectura de Computadoras_
_04-09-2015_
En la etapa de ensamblado, el ensamblador (as) lee el archivo con extensin .s y lo traduce en instrucciones de
lenguaje de mquina generando un archivo objeto relocalizable el cual se guarda con extensin .o
GNU Linker
El enlazador GNU, llamado ld, se utiliza para vincular los archivos de cdigo objeto en cualquiera de los
archivos de programa ejecutables o archivos de la biblioteca. El programa ld es tambin parte del paquete
binutils de GNU, as que si usted ya tiene el ensamblador GNU instalado, es probable que el enlazador este
instalado.
Tarea:
GNU Debugger
El Programa Depurador de GNU. Muchos programadores profesionales utilizan el programa depurador GNU
(GDB) para depurar y solucionar problemas de aplicaciones C y C ++. Lo que no saben es que tambin puede ser
usado para los programas en lenguaje ensamblador. Esta herramienta esta incluida en el paquete gdb.
Tareas:
_Arquitectura de Computadoras_
_04-09-2015_
_Arquitectura de Computadoras_
_04-09-2015_
Ejemplos_
Impresin de una Cadena de texto en la Salida Estndar
Ejercicios_
_Programa que calcula la expresin x = (a+(b-c))/(c*d) dados los valores
a=4, b=5, c=2, d=7 declarados en la seccin de datos
_Realice un pequeo programa que pida dos nmeros enteros y muestre la suma
[ haga uso de la instruccin call para utilizar las funciones
printf y scanf desde ensamblador ]
_Arquitectura de Computadoras_
_04-09-2015_