Documente Academic
Documente Profesional
Documente Cultură
Grupo: 301302_8
Presentado por:
Cead: Zipaquirá
A:
Tutor: ANYELO GERLEY QUINTERO
Fecha: Mayo 09 de 2018
PORTADA
INTRODUCCIÓN
OBJETIVOS ESPECÍFICOS
.model small ;se usa la directiva simplificada .MODEL para definir el atributo;
modelo de memoria, ubicación de la pila.
.stack ;esta directiva abre y cierra el segmento de pila
.data ;comienzo del segmento de datos
mensaje db 10,13, '* Ingrese un numero -->: $';se define el tipo de dato DB (byte)
cero db 10,13, '*>> El Dato ingresado es CERO$ ';mensaje cuando numero
ingresado es = cero, despues de validacion
impar db 10,13, '*>> El Dato ingresado es IMPAR$ ';mensaje cuando numero
ingresado es impar, despues de validacion
par db 10,13, '*>> El Dato ingresado es PAR$ ';mensaje cuando numero
ingresado es Par, despues de validacion
n1 db 1
.code
call num
call Compara
;este código es para leer carácter con eco: esto quiere decir que cuando se
digita un carácter se imprime en la pantalla enseguida
Num_Impar: ;etiqueta
Num_cero: ;etiqueta
lea dx, cero
mov ah,09 ;peticion para desplegar
int 21h ;carga la direccion de la indicacion
jmp Inicio ;salta a la etiqueta inicio para repetir el codigo
Num_par: ;etiqueta
lea dx, par
mov ah,09 ;peticion para desplegar
int 21h ;carga la direccion de la indicacion
jmp Inicio ;salta a la etiqueta inicio para repetir el codigo
end
Ejecucion del rograma con Etiquetas:
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. Documentar perfectamente todo el código.
Generar tres capturas por pantalla de la ejecución del programa. Anexar
Archivo .asm del programa. Nota:
(IP) + 1 -> IP 10 02
- (IP) Buffer de direcciones 10 03
- Señal de lectura de memoria (secuenciador lee)
- (Mem) -> Buffer de Datos 00
- (Buffer de Datos) -> AH00
- (IP) + 1 -> IP20 03
(IP) + 1 -> IP 10 04
2do Ciclo de instrucción:
- Búsqueda del operando en memoria
- (IP) Buffer de direcciones 10 04
- Señal de lectura de memoria (secuenciador lee)
- (Mem) -> Buffer de Datos 30
- (Buffer de Datos) -> DL 30
- (IP) + 1 -> IP 10 05
- (IP) Buffer de direcciones 10 05
- Señal de lectura de memoria (secuenciador lee)
- (Mem) -> Buffer de Datos 00
- (Buffer de Datos) -> DH00
ADD AX,DX
- (IP) + 1 -> IP10 06
1er Ciclo de instrucción:
- Búsqueda del código de operación y decodificación.
- (IP) Buffer de direcciones 10 06
- Señal de lectura de memoria (secuenciador lee)
- (Mem) -> Buffer de Datos 03
- (Buffer de Datos) -> IR03
- Decodificación
- Secuenciador
ciclo:
add cl,al ; Se hace suma en registro CL
add ch,1
JMP sumador
ret
Hyde, R. (2010). The Art of Assembly Language. San Francisco: No Starch Press
(págs.1 - 150). Recuperado de:
http://bibliotecavirtual.unad.edu.co:2048/login?url=http://search.ebscohost.com/logi
n.aspx?direct=true&db=e000xww&AN=440013&lang=es&site=ehost-live
Referencias Complementarias