Sunteți pe pagina 1din 12

UNIVERSIDAD NACIONAL DE PIURA

FACULTAD DE INGENIERA INDUSTRIAL


ESCUELA PROFESIONAL DE INGENIERA
INFORMTICA
Ao de la Promocin de la Industria Responsable y del Compromiso
Climtico

Informe de Laboratorio N4

Curso: Microcomputadoras I
Responsables:
Castillo Berr, Htalo
Holgun Panta, Jorge Nicols
Jimnez Cceres Cristopher
Docente: Ing. Vctor Hugo Valle Ros
Semestre: 2014-II

Piura, noviembre del 2014

NDICE
1.

INTRODUCCIN ................................................................................................................ 3

2. OBJETIVOS ............................................................................................................................. 3

3.

4.

2.1.

Objetivo General ........................................................................................................... 3

2.2.

Objetivos Especficos .................................................................................................... 3

MARCO TEORICO .............................................................................................................. 3


3.1.

Rutina ............................................................................................................................ 3

3.2.

Lenguaje ensamblador................................................................................................... 3

3.3.

El procesador Intel 8086 ............................................................................................... 4

PROGRAMAS DESARROLLADOS EN LABORATORIO ............................................... 5


4.1.

Programa 1: Programa que hace uso de dos segmentos de cdigo. .............................. 6

4.2.

Programa 2: Invertir cadena .......................................................................................... 7

4.3.

Programa 3: Obtener el mayor nmero de un arreglo ................................................... 8

5.

CONCLUSIONES .............................................................................................................. 11

6.

RECOMENDACIONES ..................................................................................................... 11

7.

REFERENCIAS .................................................................................................................. 12

1. INTRODUCCIN

En este informe se detallar lo realizado en la cuarta sesin de laboratorio, el


cual consisti en realizar programas en bajo nivel mediante el lenguaje
Assembler usando un entorno de desarrollo. Para realizar los programas se hizo
uso de rutinas y se trabaj con dos segmentos de cdigo (rutinas lejanas).
2. OBJETIVOS
2.1. Objetivo General
Implementar los ejercicios desarrollados en clase haciendo uso de rutinas para
comprobar su funcionamiento.
2.2. Objetivos Especficos
Hacer uso de las herramientas de programacin en bajo nivel para
compilar nuestros programas fuente.
Entender el uso de rutinas cercanas y lejanas.

3. MARCO TEORICO
3.1.

Rutina

Una rutina o tambin llamada subrutina es una porcin de programa claramente


definida que cumple una funcin especfica y a la cual se puede llamar desde
cualquier parte del programa principal. Una rutina es equivalente a un mtodo en
un lenguaje de alto nivel. Al igual que los mtodos, las rutinas tambin reciben
parmetros, pero estos se deben apilar antes de hacer el llamado. Las rutinas
pueden ser cercanas o lejanas, las lejanas se encuentran en otro segmento de
cdigo.
3.2.Lenguaje ensamblador
El lenguaje ensamblador o Assembler, es un lenguaje de programacin de bajo
nivel para las computadoras, microprocesadores, microcontroladores, y otros
circuitos programables. Implementa una representacin simblica de los cdigos
de

mquina binarios

otras

constantes

necesarias

para

programar

una arquitectura dada de CPU y constituye la representacin ms directa


3

del cdigo

mquina especfico

para

cada

arquitectura

legible

por

un

programador. Esta representacin es usualmente definida por el fabricante


de hardware, y est basada en los mnemnicos que simbolizan los pasos de
procesamiento (las instrucciones), los registros del procesador, las posiciones de
memoria y otras caractersticas del lenguaje. Un lenguaje ensamblador es por lo
tanto especfico de cierta arquitectura de computador fsica (o virtual). Esto est
en contraste con la mayora de los lenguajes de programacin de alto nivel, que
idealmente son porttiles.
3.3. El procesador Intel 8086
El 8086 es procesador diseado para trabajar con lenguajes de alto y bajo nivel,
disponiendo de un soporte hardware con el que programas escritos en dichos
lenguajes ocupan un pequeo espacio de cdigo y pueden ejecutarse a gran
velocidad.
Algunas caractersticas del 8086:
El 8086 dispone de instrucciones especiales para el tratamiento de
cadenas de caracteres.
Dispone de un conjunto de registros, denominados cola de
instrucciones, en el cual se van almacenando de forma anticipada los
cdigos de las instrucciones, consiguiendo que este aumente su
velocidad de trabajo.
Los registros del 8086 tienen una misin especfica, por lo que se podra
decir que cada uno de ellos tiene su propia personalidad, aunque varios
comparten tareas comunes.
Las 20 lneas del bus de direcciones solo permiten direccionar una
memoria de 1 Megabyte.

4. PROGRAMAS DESARROLLADOS EN LABORATORIO

Antes de implementar nuestros programas debemos tener en cuenta lo siguiente:


Nuestros programas en Assembler solo se funcionarn en plataformas de
32 bits. Si se tiene un Sistema Operativo de 64 bits se deber instalar una
mquina virtual de 32 bits o un programa emulador del 8086.
Debemos crear una carpeta en el disco C (Ej. C:\Micro\) donde se
almacenarn los archivos que se generen.
Se debe tener en la carpeta que almacena nuestros programas 4 archivos
muy importantes: TASM.EXE, TLINK.EXE, DPMILOAD.EXE y
DPMIMEM.DLL. Estos archivos los podemos encontrar dentro del
paquete de Borlan C.

Al guardar nuestro programa el nombre no debe contener ms de 8


caracteres.

4.1. Programa 1: Programa que hace uso de dos segmentos de cdigo.


Se desarroll un programa en Assembler que imprima un mensaje que indique
en que segmento de cdigo se encuentra en cada momento, para lo cual se cre
dos segmentos de cdigo.
Cdigo del Programa:

Guardamos el archivo con extensin .ASM

Compilamos el programa para detectar errores de sintaxis con el archivo


TASM. (Aqu se genera un archivo con extensin .obj).

Ahora enlazamos el archivo para generar el archivo .exe con el archivo


TLINK.(Aqu se generan dos archivos .map y .exe )

Ejecutamos el archivo mensaj.exe obteniendo:

4.2. Programa 2: Invertir cadena


Se pidi hacer un programa en Assembler que permita ingresar una cadena y
muestre dicha cadena invertida haciendo uso de rutinas.
Cdigo del Programa:

De la misma manera guardamos el archivo con extensin .ASM


Compilamos el programa para detectar errores de sintaxis con el archivo
TASM.
Ahora enlazamos el archivo para generar el archivo .exe con el archivo
TLINK
Ejecutamos el archivo cadena.exe obteniendo:

4.3.Programa 3: Obtener el mayor nmero de un arreglo


Se pidi hacer un programa en Assembler que muestre el mayor de los
nmeros de un arreglo. El programa hace uso de rutina con parmetros
ingresados a travs de la pila.
8

Cdigo del programa

De la misma manera guardamos el archivo con extensin .ASM


Compilamos el programa para detectar errores de sintaxis con el archivo TASM.
Ahora enlazamos el archivo para generar el archivo .exe con el archivo TLINK.
9

Ejecutamos el archivo .exe obteniendo:

10

5. CONCLUSIONES

El uso de rutinas permite simplificar nuestro programa, pues ayudan a que


nuestro cdigo sea ms limpio.
Se comprob que los programas en Assembler realizados en las sesiones de
clase funcionaban correctamente en un entorno de desarrollo apropiado para
realizar programas en bajo nivel.
La programacin en bajo nivel suele ser muy tediosa dado que no existen
estructuras de programacin, pero nos sirve para entender cmo se manejan los
archivos internos de la computadora.

6. RECOMENDACIONES
Al implementar una rutina sta debe cumplir una tarea en especfico y ser
general, es decir, que debe funcionar para cualquier situacin para la que
ha sido desarrollada.

Dado que en la mayora de computadoras de la actualidad no se puede


usar el compilador y enlazador de las versiones de Borland, se
recomienda utilizar programas emuladores del 8086 alternativos, tales
como: DOS Box 0.74, Emu8086 y otros emuladores muy fciles de
utilizar. Tambin se puede optar por instalar una mquina virtual de 32
bits capaz de trabajar bajo esta plataforma.

11

7. REFERENCIAS
-

Definicin de rutina. Obtenido de:


http://www.utp.edu.co/~eduque/arquitec/RUTINAS.PDF

Definicin de Lenguaje ensamblador. Obtenido de:


http://es.wikipedia.org/wiki/Lenguaje_ensamblador

El

Procesador

Intel

8086,

Pginas

2.

Obtenido

de

:http://es.slideshare.net/MCRBTALLER/procesador-intel-8086

12

S-ar putea să vă placă și