You are on page 1of 6

Ral Fabin Roldn Nario

Experto en contenido

Albenis Corts Rincn


Asesora Pedaggica

Hctor Jair Neira


Diseador Grfico

Juan Carlos Velsquez


Editor

Todos los Derechos Reservados 2010. Propiedad de Compensar Unipanamericana Institucin Universitaria con Apoyo Acadmico
de Mondragon Unibertsitatea (MU).
Nombre de la Asignatura

ACTIVIDAD DE APRENDIZAJE 4. Programacin bsica del microprocesador

Programa Acadmico
Tcnica Profesional en Instalacin de Redes de Telecomunicaciones
Asignatura
Arquitectura de Hardware

Metodologa Activa
Proyecto

Descripcin de la situacin

La programacin del microprocesador se puede realizar por medio de un programa que


permita convertir los cdigos de lenguaje ensamblador en lenguaje de mquina; uno de
los programas empleados para tal fin es el DEBUG, que vienen incluido dentro de los
Sistemas Operativos de Microsoft.

Objetivo

Emplear el lenguaje ensamblador para la realizacin de programas que permiten aprender


el funcionamiento del microprocesador y comprender su estructura interna bsica.

Aprender a direccionar la memoria en modo real empleando los mtodos indirectos, de


registro y directo, para los microprocesadores Intel utilizando instrucciones bsicas.

Materiales Necesarios

Computadores con sistema operativo de Microsoft con acceso a Debug.

Referentes Tericos
Subcomandos bsicos del Debug
A Permite ensamblar instrucciones y pasarlas a cdigo de mquina
Actividades de aprendizaje

E Permite introducir datos directamente en la memoria


G Ejecuta el programa que se encuentra en la memoria
Q Permite salir del Debug
R Permite visualizar el contenido de uno o ms registros
D Muestra el contenido de un rea de memoria

Todos los Derechos Reservados 2010. Propiedad de Compensar Unipanamericana Institucin Universitaria con Apoyo Acadmico
de Mondragon Unibertsitatea (MU).
2
Nombre de la Asignatura

Instrucciones Bsicas del Microprocesador


MOV Permite el movimiento de datos de memoria desde y hacia los registros
INT 21 Interrupcin del Sistema
ADD Instruccin empleada para realizar la suma entre dos operandos
SUB Instruccin empleada para realizar la resta entre dos operandos
INC Instruccin para incrementar un dato numrico en una unidad
DEC Instruccin para decrementar un dato numrico en una unidad
LOOP Repite hasta que el registro de 8 bits CX llegue a 0
JNZ Permite realizar un salto condicional verificando el estado de la
bandera de cero; de esta manera salta sino es cero
CMP Compara dos campos de datos afectando el registro de banderas

Direccionamiento de memoria bsico en modo real

Direccionamiento Inmediato

Transfiere un byte, palabra o doble palabra (DB, DW o DD) inmediatamente al registro de


destino.

Ejemplo:

-A ;Se habilita el DEBUG para ensamblar instrucciones

MOV AL,3FH ;Se transfiere el dato de 8 bits 3F al registro AL

Direccionamiento de Registro

Permite transferir una copia del contenido desde el registro fuente hacia el registro de
destino.

Ejemplo:

-A ;Se habilita el DEBUG para ensamblar instrucciones

MOV AX,45F0H ;Se transfiere el dato de 16 Bits 45F0 al registro AX

MOV BX,AX ;Se transfiere una copia del registro AX al registro BX


Actividades de aprendizaje

Direccionamiento Directo

Permite transferir un dato desde una localidad de memoria a un registro. Es importante


utilizar registros del mismo tamao en las instrucciones.

Todos los Derechos Reservados 2010. Propiedad de Compensar Unipanamericana Institucin Universitaria con Apoyo Acadmico
de Mondragon Unibertsitatea (MU).
3
Nombre de la Asignatura

Ejemplo

-E 200 45 ;Se define un dato de 8 bits directamente en la memoria


-A
MOV AH,[200] ;Se transfiere el dato de 8 bits de la localidad de memoria
200 al registro AX

Procedimiento

Anlisis de Ejercicios resueltos:

Acceda a ejecutar el programa Debug mediante los siguientes pasos:

Haga clic en

En el men desplegado haga clic en ejecutar


Escriba cmd y luego

En el indicador del sistema digite Debug y luego

Una vez iniciado Debug escriba los siguientes programas empleando el segmento de
memoria dado por omisin (depende del sistema), contenida en el registro CS.

PROGRAMA 1 PROGRAMA 2
- A - A

CS:0100 MOV AX,1CAB CS:0100 MOV AX,2AE4

CS:0103 MOV BX,CCCA CS:0103 MOV BX,7DB1

CS:0106 ADD AX,BX CS:0106 MOV CX,AX

CS:0108 INT 21 CS:0108 MOV AX,BX

CS:010A CS:010A MOV BX,CX


- G 0108
CS:010C INT 21

CS:010E
- G 010C
Actividades de aprendizaje

PROGRAMA 3 PROGRAMA 4

Todos los Derechos Reservados 2010. Propiedad de Compensar Unipanamericana Institucin Universitaria con Apoyo Acadmico
de Mondragon Unibertsitatea (MU).
4
Nombre de la Asignatura

- E 0200 50
- E 0201 20 - A
- E 0202 AA
- E 0203 15 CS:0100 MOV AL,0
- A CS:0102 MOV CL,10
CS:0104 INC AL
CS:0106 LOOP 0104
CS:0100 MOV AL,[0200] CS:0106 MOV [300],AL
CS:0108 INT 21
CS:0103 MOV AH,[0201] CS:010
- G108
CS:0107 MOV BL,[202] - D300

CS:010B MOV BH,[203]

CS:010F ADD CX,AX

CS:0111 ADD CX,BX

CS:0113 MOV [300],CX

CS:0117 INT 21

CS:0119
G 0117
D300

PROGRAMA 5
CS:0100 MOV AL,5
CS:0102 MOV CL,0
CS:0104 MOV AH,CL
CS:0106 INC CL
CS:0108 ADD AH,CL
CS:010A DEC AL
CS:010C CMP AL,0
CS:010E JNZ 106
CS:0110 MOV [300],AH
CS:0114 INT 21
CS:0100
- G 0114
- D300

En relacin con los programas anteriormente analizados realice las siguientes actividades:
Actividades de aprendizaje

1. Coloque los comentarios pertinentes en cada una de las lneas de cdigo

2. Identifique el objetivo de cada uno de los programas propuestos

3. Realice los siguientes programas de acuerdo al objetivo previsto:

Todos los Derechos Reservados 2010. Propiedad de Compensar Unipanamericana Institucin Universitaria con Apoyo Acadmico
de Mondragon Unibertsitatea (MU).
5
Nombre de la Asignatura

a. Restar dos nmeros de 16 bits introducidos directamente en la memoria. El


resultado debe ser guardado en memoria.
b. Obtener el factorial de un nmero almacenado previamente en memoria. El
resultado debe ser guardado en memoria.
c. Intercambiar los contenidos de 4 registros de 8 bits en el orden que desee.
d. Sumar tres vectores de dimensiones 3x1, donde cada componente del
vector sea de 8 bits, definiendo las componentes del vector previamente en
la memoria y cuyo resultado debe ser almacenado en otra localizacin de
memoria.
e. Mostrar la serie de Fibonacci hasta el nmero contenido previamente en una
localizacin de memoria. Almacene el resultado en la memoria.
.

Actividades de aprendizaje

Todos los Derechos Reservados 2010. Propiedad de Compensar Unipanamericana Institucin Universitaria con Apoyo Acadmico
de Mondragon Unibertsitatea (MU).
6

You might also like