Está en la página 1de 14

TRABAJO DE ARQUITECTURA

TAREA 5 – DESARROLLAR UN PROTOTIPO FUNCIONAL

PRESENTADO A:

ANYELO GERLEY QUINTERO

ENTREGADO POR:

FRANKLIN DAVID MARTINEZ

COD. 1.065.824.953

KELLY JOHANA SIERRA

COD. 1.065.137.869

JOSE DANIEL MONTES

JOSE CHURIO

GRUPO: 301302_33

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD


PROGRAMA INGENIERIA DE SISTEMAS

11 DE DICIEMBRE DE 2019

INTRODUCCION.
En esta oportunidad utilizamos el software EMU8086, el cual es un emulador del
microprocesador 8086 con ensamblador integrado, corre sobre Windows y cuenta
con una interfaz gráfica amigable e intuitiva que facilita el aprendizaje de lenguaje
de programación ensamblador.

Se desarrollo la tarea 5 la cual representa la actividad final del curso, con la


realización de un menú con diferentes soluciones aplicando los conocimientos
adquiridos.
OBJETIVOS.

Objetivos Generales.

Comprender los fundamentos básicos de la maquina secuencial de programa


almacenado de la Arquitecturas de Computadores Von Neumann

Objetivos Específicos.

- aprender a realizar los ejercicios suma resta multiplicación y división por


medio de emu8086
- Identificar y profundizar las temáticas tratadas en el curso perdió del
simulador emu8086
DESARROLLO DE LA ACTIVIDAD

Realice el prototipo funcional en lenguaje Ensamblador, que incluya el siguiente


menú de opciones:

MENÚ
1. Datos del autor
2. Suma de dos números
3. Resta de dos números
4. Multiplicación de dos números
5. División de dos números
6. Validar si un número es positivo o negativo
7. Salir.

CODIGO

; Autor:Kelly Johana Sierra Andrade


;
Codigo: 1065137869

; Grupo No:301302-33

; Fecha: Diciembre 19

name: " EVALUACION FINAL"

org 100h ; se da inicio al programa

include 'emu8086.inc' ;se incluyen las funciones de la libreria del programa


emu8086

DEFINE_SCAN_NUM

DEFINE_PRINT_STRING

DEFINE_PRINT_NUM

DEFINE_PRINT_NUM_UNS

jmp INICIO

MENU1 db 13,10,'Kelly Johana Sierra Andrade',13,10,


db
13,10,'Codigo: 1.065.137.869',13,10,

db 13,10,'UNAD - Universidad Nacional Abierta y a Distancia',13,10,

db 13,10,'CEAD - VALLEDUPAR',13,10

db 13,10,'Fecha:Diciembre 2019',13,10,

db 13,10, '******MENU******',13,10,

db 13,10,'1 SUMA DE DOS NUMEROS ',13,10,

db 13,10,'2 RESTA DE DOS NUMEROS ' ,13,10,

db 13,10,'3 MULTIPLICACION DE DOS NUMEROS ',13,10,

db 13,10,'4 DIVISION DE DOS NUMEROS',13,10,

db 13,10,'5 VALIDAR SI UN NUMERO ES POSITIVO O NEGATIVO ',13,10,

db 13,10,'6 SALIR ' ,13,10,

; se define datos del autor y el menu con sus opciones

db 13,10,13,10,'Debe Digitar El Primer Numero: $'

TEXT2 db 13,10,13,10,'Debe Digite El Segundo Numero: $'

TEXT3 db 13,10,13,10, 'La Suma Es: $'

TEXT4 db 13,10,'La Resta Es: $'

TEXT5 db 13,10,'La Multiplicacion Es: $'

TEXT6 db 13,10,'La Divison es: $'

TEXT7 db 13,10,'Positivo: $'


TEXT8 db 13,10,'Negativo: $'

TEXT9 db 13,10,'Cero: $'

; se aplican los textos para cada resultado acorde al menu

NUM1 dw ? ; se define la variable de 2 bytes

NUM2 dw ? ; indicamos que el simbolo ? es para indicar que no se inicilizan con


valor alguno

inicio:

mov ah,09 ;se indica la instruccion para que imprima en la pantalla

lea dx,MENU1 ;cargara la cadena de texto 1 en dx

int 21h ;se interrumpira pantalla

call SCAN_NUM ; Funcion SCAN_NUM la cual toma el numero de teclado;y este


valor se guardara en ax

mov NUM1,cx ;movera el numero a variable num1

mov ah,09 ;realiza la interrupcion para imprimir en pantalla

lea dx,TEXT2 ; se cargara cadena de texto 2 en dx

int 21h
call
SCAN_NUM ; Funcion SCAN_NUM cual toma numero de teclado; este valor se
guardara en ax

mov NUM2,cx ; se movera el numero a variable num2

mov ah,09

lea dx,TEXT3

int 21h

mov ax,NUM1 ;se movera primer numero digitado a ax

add ax,NUM2 ;se sumaran los numeros digitado, y quedaran almacenados en ax

call PRINT_NUM

mov ah,09

lea dx,TEXT4

int 21h

mov ax,NUM1 ;se movera primer numero digitado a ax

sub ax,NUM2 ; se restara el 2do del 1er numero,y quedara almacenaddo en ax

call PRINT_NUM

mov ah,09
lea
dx,TEXT5

int 21h

mov ax,NUM1 ;se movera el primer numero digitado a ax

mov bx,NUM2 ;se movera el segundo numero digitado a bx

mul bx ;ax = ax*bx para realizar la multiplicacion

call PRINT_NUM

mov ah,09

lea dx,TEXT6

int 21h

xor dx,dx ;se deja en cero dx; para que no se desborde la division

;por lo que DX almacena el modulo de la division

mov ax,NUM1 ;se movera el primer numero digitado a ax

mov bx,NUM2 ;se movera el segundo numero digitado a bx

div bx ;ax = ax*bx para realizar division

call PRINT_NUM

cmp bl,0

JG POSITIVO

JL NEGATIVO
JE
CERO; ETIQUETAS PARA LOS SIGUIENTES BLOQUES

POSITIVO:

mov ah,09h

lea dx,TEXT7

int 21h

NEGATIVO:

mov ah,09h

lea dx,TEXT8

int 21h

CERO:

mov ah,09h

lea dx,TEXT9

int 21h

SALIR:
mov
ax, 4c00h ;Terminar el proceso

int 21h ;llamamos a NUM

end
CONCLUSION.

Se logra comprender los fundamentos básicos de la maquina secuencial de


programa almacenado aplicándolos así al momento de darle solución a los
métodos de conversión entre los tres sistemas numéricos computacionales,
desarrollando el prototipo funcional en lenguajes ensamblador emu8086.
REFERENCIAS BIBLIOGRAFICAS.

Castro, M. (2014). Estructura y tecnología de computadores I (Gestión y Sistemas)


(págs. 1- 114). Recuperado de http://bibliotecavirtual.unad.edu.co/login?
url=http://search.ebscohost.com/login.aspx?
direct=true&db=edselb&AN=edselb.3217739&lang=es&site=eds-live
Departamento de Ingeniería y Tecnología de Computadores. (10 de 10 de 2013).
Universidad de Murcia. Recuperado de
http://ditec.um.es/~jpujante/documentos/Tema4-slides.pdf
Diaz, J. (15 de 09 de 2015). Universidad Nacional de Ingenieria. Recuperado de
http://escuelaingenieria.jimdo.com/app/download/5865883118/Introduccion_
a_las_Arquitecturas_Computacionales_5.pdf?t=1470956557
Castro, M. (2014). Estructura y tecnología de computadores I (Gestión y Sistemas)
(págs. 1- 114). Recuperado de http://bibliotecavirtual.unad.edu.co/login?
url=http://search.ebscohost.com/login.aspx?
direct=true&db=edselb&AN=edselb.3217739&lang=es&site=eds-live
Departamento de Ingeniería y Tecnología de Computadores. (10 de 10 de 2013).
Universidad de Murcia. Recuperado de
http://ditec.um.es/~jpujante/documentos/Tema4-slides.pdf
Diaz, J. (15 de 09 de 2015). Universidad Nacional de Ingenieria. Recuperado de
http://escuelaingenieria.jimdo.com/app/download/5865883118/Introduccion_
a_las_Arquitecturas_Computacionales_5.pdf?t=1470956557
Andonegui, M. (15 de 03 de 2007). El sistema numérico decimal. [N.p.]:
Corporación Andina de Fomento (págs.1 - 29). Recuperado de
http://bibliotecavirtual.unad.edu.co:2051/login.aspx?
direct=true&db=edsebk&AN=804505&lang=es&site=eds-live
Arquitecturas de Microprocesadores. (2005). Ediciones Paraninfo,
S.A. Recuperado de http://bibliotecavirtual.unad.edu.co/login?
url=http://search.ebscohost.com/login.aspx?
direct=true&db=edsgvr&AN=edsgcl.4054500068&lang=es&site=eds-live

También podría gustarte