jueves, 31 de enero de 2019

Practica en clase Suma 31-01-2019



org 100h

;suma numero

mov ax, 8
mov bx, 4
add ax, bx
mov bx, 5
sub ax, bx
mov bx, 3       
inc bx

mov ax, 6

hlt; terminar proceso

Programa #3 Hola mundo y dar clic (30-01-2019)

.MODEL tiny

NAME "hola a todos"

.DATA
 dato db "Hola Mundo",0Dh,0Ah,24h
 dato2 db "Hola Mundo2$"
 
 ;msg2 db "Hola Mundo"
 ;msg3 db "Como estas?"
 
 .CODE
 INICIO:
 mov dx, OFFSET dato
 mov ah,09
 int 21h
 
 mov ah,0
 int 16h
 
 
 
 mov dx,OFFSET dato2
 mov ah,09
 int 21h
 
 ret
 
 END

Programa #2 Hola Mundo


.MODEL SMALL

.STACK

.DATA

CADENA1 DB 'HOLAMUNDO.$'

CADENA2 DB 'HOLa.$'

.CODE

PROGRAMA:

MOV AX,@DATA

MOV DS,AX

MOV DX,OFFSET CADENA1

MOV AH,9

INT 21H

MOV DX,OFFSET CADENA2

MOV AH,9

INT 21H

END PROGRAMA

¿Que es emu 8086?



              El Emulador EMU8086 es el primer programa que se utiliza en el curso de Microprocesadores . se ha elegido este emulador porque posee una interfaz de usuario muy amistosa que permite familiarizarse con los fundamentos de la programación en lenguaje ensamblador de forma muy intuitiva, aparte de eso brinda una serie de recursos para ejecutar y depurar los programas. También tiene algunas desventajas como el de no soportar algunas de las interrupciones más interesantes que posee el sistema operativo y tampoco puede acceder a los puertos físicos (reales), sino que los emula usando otros programas que ya están incluidos en su respectiva carpeta.
Para iniciar se debe ejecutar el archivos EMU886.exe, que se encuentra en la carpeta del mismo nombre, en el directorio raíz; seguramente en la computadora donde corra el programa tendrá otras alternativas para activar el programa, como un acceso directo en el escritorio o en el menú de programas del sistema operativo.

Descarga Aqui

miércoles, 30 de enero de 2019

Tipos de interrupciones de lenguaje ensamblador



int 00H-->Division entre cero
int 01h-->Un solo paso
int 02h-->Interrupcion no enmascarable
int 03h--> Punto de interrupcion
int 04h-->Desbordamiento
int 05h-->Impresion de pantalla
int 08h-->Cronometro
int 09h-->Interrupcion desde el teclado
int 0Bh-->Control del puerto Com1
int 0Ch-->Control del puerto Com2
int 0Dh-->Control de dispositivos en paralelo
int 0EH-->Control de disco flexible
int 0Fh-->Control de dispositivos en paralelo 2
int 10h-->Funciones de exhibicion de video
int 11h-->Determinacion del equipo
int 12h-->Determinacion tamaño de la memoria
int 13h-->Funciones del Bios, E/S
int 14h-->Comunicaciones de E/S
int 15h-->Servicios del sistema
int 16h-->Funciones de entrada del teclado
int 18h-->Entrada con el Basic de Rom
int 19h-->Cargador ed arranque
int 1Ah-->Leer y establecer la hora
int 1Bh-->Obtener el control con una interrupcion de teclado.
int 2oh-->Terminar un programa
int 21h-->Funciones del dos.
int 22h-->Direccion de terminacion
int 23h-->Direccion de Ctrl/Break
int 24h-->Manejador de error critico
int 25h-->Lectura absoluta de disco
int 26h-->Escritura absoluta de disco
int 27h-->Terminacion permaneciendo residente
int 2Fh-->Interrumpe la multiplexion
int 33h->Funciones del Raton

Programa 1 Hola mundo


.MODEL SMALL
.STACK
.DATA
CADENA1 DB 'HOLA MUNDO$'
.CODE
PROGRAMA:
 MOV AX,@DATA
 MOV DS,AX
 MOV DX, OFFSET CADENA1
 MOV AH,9
 INT 21H
END PROGRAMA