Você está na página 1de 9

ARQUITECTURA DE COMPUTADORES

Trabajo colaborativo 3

Arquitectura de computadores

Curso:
301302a _ 291

Grupo
29

Integrantes:
Jhonatan florez obando código 1098628702
Jose Wilmar Jurado Contreras código 1090389292
Luis Carlos Alvarado código xxxxxxxxxxxx

Tutor:
Angelo gerley quintero

Universidad nacional abierta y a distancia unad


Escuela basica de tecnologia e ingenieria
Noviembre de 2016
ARQUITECTURA DE COMPUTADORES
INTRODUCCIÓN

El siguiente trabajo de arquitectura de computadores la voy a realizar teniendo en


cuenta lo manifestado en la guía integradora y lo manifestado por el apreciado tutor
en el foro de participación del trabajo.

Es un tema nuevo el cual el objetivo es seguir adquiriendo nuevos conocimientos


en nuestro curso y de seguir aprendiendo y cumplir con lo manifestado.
ARQUITECTURA DE COMPUTADORES

1. Explicar mediante un gráfico en que consiste las instrucciones tipo salto del Lenguaje Ensamblador (Direcciones corta, cercana
y lejana, etiquetas, saltos incondicionales, saltos condicionales, instrucciones de testeo, decisiones y bucles)
ARQUITECTURA DE COMPUTADORES
2. Desarrollar un código en lenguaje ensamblador que permita leer un número de
un digito por teclado y determinar si el número es par, impar o cero. Generar tres
capturas por pantalla de la ejecución del programa. Anexar Archivo .asm del
programa. Nota: No utilizar Simuproc

model small ; modelo de memoria

.stack 64 ; tamaño de la pila

.data

var1 db ?

msg1 db 'INGRESE NUMERO: $'

msg2 db '=>EL NUMERO INGRESADO ES POSITIVO: $'

msg3 db '=>EL NUMERO INGRESADO ES NEGATIVO: $'

msg4 db '=>EL NUMERO INGRESADO ES CERO: $'

.code

start

mov ah,09h

lea dx, msg1

int 21h

mov ah,01h

int 21h

sub al,30h

mov var1,al

mov al,0h

cmp var1,al

ja mayor

jb menor

je igual

mayor:

mov ah,09h

lea dx,msg3
ARQUITECTURA DE COMPUTADORES
int 21h

jmp salir

menor:

mov ah,09h

lea dx,msg2

int 21h

jmp salir

igual:

mov ah,09h

lea dx,msg4

int 21h

jmp salir

salir:

.exit

end
ARQUITECTURA DE COMPUTADORES
3. Desarrollar un código en lenguaje ensamblador que permita realizar una
multiplicación de dos números a través de sumas sucesivas y una potencia a través
de multiplicaciones sucesivas (para ello debe utilizar instrucciones tipo bucle). Al
inicio del programa se deben capturar por teclado dos números de un digito cada
uno; Generar tres capturas por pantalla de la ejecución del programa. Anexar
Archivo .asm del programa.
Nota: No utilizar Simuproc
.model small; modelo de memoria

.stack 100; tamaño de la pila

.data

msj1 db 'Numero 1 y Potencia:','$'

msj2 db 13,10,'Numero 2 y Base:','$'

msj3 db 13,10,'Multiplicacion:','$'

msj4 db 13,10,'Potencia:','$'

linea db 13,10,'$'

var1 db 0

var2 db 0

.code

startup; iniciamos el procedimiento

call limpia

mov ah,09h

lea dx, msj1

int 21h

call leer

sub al,30h

mov var1,al

mov ah,09

lea dx, msj2

int 21h
ARQUITECTURA DE COMPUTADORES

call leer

sub al,30h

mov var2,al

mov cl,var1

sub cl,1

;*****************Multiplicacion

repetir:

add al,var2

LOOP repetir

mov ah,09h

lea dx, msj3

int 21h

mov dl,al

add dl,30h

mov ah,02h

int 21h

;***************Potencia

mov cl,var1

mov bl,var2

mov al,var2

sub cl,1

repetir2:

mul bl

LOOP repetir2

mov ah,09h

lea dx, msj4


ARQUITECTURA DE COMPUTADORES
int 21h

mov dl,al

add dl,30h

mov ah,02h

int 21h

.exit

;************Procedimientos

salto proc near

mov ah,09h

lea dx,linea

int 21h

mov dl,00h

ret

salto endp

leer proc near

mov ah,01h

int 21h

ret

leer endp

limpia proc near

mov ah,00h

mov al,03h

int 10h

ret

limpia endp

end
ARQUITECTURA DE COMPUTADORES

Você também pode gostar