miércoles, 28 de febrero de 2018

Programas en clase

1.- Menu para colores

                       
; You may customize this and other start-up templates;
; The location of this template is c:\emu8086\inc\0_com_template.txt

org 100h

.stack 64 ;

.data ;
titulo db 13,10,' CAMBIAR FONDO DE PANTALLA',13,10,'$'

mensaje db 'Presione 1 si quiere la pantalla verde.',10,13,'Si quiere rojo, presione 2',13,10,'Si quiere Morado, presione 3',13,10,'Si quiere Celeste, presione 4.',10,13,'Para salir, presione cualquiertecla',13,10,'$'


.code 

inicio:;Funcion
  ;---------------------------------------------------
 mov ah,0H   ;limpia el registro
 mov al,3H ;modo de texto
 int 10h  ;interrupcion de video

 mov bh,0FH      ;0 color negro , f color de letra blanca
 mov cx,0000H    ;es la esquina superior izquierda reglon: columna
 mov dx,184FH     ;es la esquina inferior derecha reglon: columna
 int 10h

 ;mov ah,02h  ;Limpiamos los registros
; mov bh,00
 ;mov dh,00
 ;mov dl,00
 ;int 10h
 ;--------------------------------------------------
 mov ax,@data     ;llamar a .data
 mov ds,ax         ;guardar los datos en ds

 lea dx,titulo     ;imprimir el mensaje
 mov ah,9h
 int 21h

 lea dx,mensaje  ;imprimir mensaje
 mov ah,9h
 int 21h
 ;---------------------------------------------------
 mov ah,08     ;pausa y espera a que el usuario precione una tecla
 int 21h        ;interrupcion para capturar
 cmp al,49       ;compara si lo que el usuario preciono fue un 1
 je llamarVerde     ;si el usuario si preciono enter llama a la funcion
 cmp al,50         ;compara si el usuario preciono el numero 2
 je llamarRojo
 cmp al,51         ;compara si el usuario preciono el numero 3
 je llamarMorado
 cmp al,52         ;compara si el usuario preciono el numero 4
 je llamarAmarillo 
 jmp fin           ;si el usuario no preciono ni una opcion a la funcion fin

fin:
 mov ax,4c00h      ;funcion que termina el programa
 int 21h

llamarVerde:
 CALL VERDEPROC ;llama al procedimiento

llamarRojo:
 CALL ROJOPROC

 llamarAmarillo:
 CALL AMARILLOPROC

llamarMorado:
 CALL MORADOPROC  ;llama  al procedimiento

VERDEPROC PROC NEAR
    ;//////////////////////////////////// lo mismo que hacemos al inicio del programa
 ; mov ah,0  ;limpia el registro
  ;mov al,3h
  ;int 10h
 ; mov ax,0600h
 ; mov bh,0fh
  ;mov cx,0000h
 ; mov dx,184Fh
  ;int 10h
 ; mov ah,02h
  ;mov bh,00
 ; mov dh,00
 ; mov dl,00
  ;int 10h
;//////////////////////////////////////////////////////////////   Poner la pantalla azul
  mov ah,06h   ;Salida directa a patalla
  mov bh,2fh  ;Color de pantalla azul y blanco de letra
  mov cx,0000h
  mov dx,184Fh
  int 10h   ;Esta interrupción se utiliza básicamente para mostrar texto en la pantalla, para cambiar a modo gráfico, para establecer la paleta de colores, etc...

  mov ax,4c00h ;termina el programa
  int 21h
  RET
VERDEPROC ENDP

MORADOPROC PROC NEAR
  mov ah,06h       ;Salida directa a patalla
  mov bh,5fh  ;    color de pantalla morado y blanco de letra
  mov cx,0000h
  mov dx,184fh
  int 10h
 
  mov ax,4c00h  ;termina el programa
  int 21h
  RET
MORADOPROC ENDP

ROJOPROC PROC NEAR
  mov ah,06h       ;Salida directa a patalla
  mov bh,4fh  ;    color de pantalla morado y blanco de letra
  mov cx,0000h
  mov dx,184fh
  int 10h
 
  mov ax,4c00h  ;termina el programa
  int 21h
  RET
ROJOPROC ENDP

AMARILLOPROC PROC NEAR
  mov ah,06h       ;Salida directa a patalla
  mov bh,3fh  ;    color de pantalla morado y blanco de letra
  mov cx,0000h
  mov dx,184fh
  int 10h
 
  mov ax,4c00h  ;termina el programa
  int 21h
  RET
AMARILLOPROC ENDP
               
end inicio

2.-Loop

.model small
.stack 64
.data
mensaje db 0AH, 0dh, "Letrero cinco veces","$"
.code
inicio:
mov cx,0005h
ciclo:
mov ax,@data
mov ds,ax
mov dx,offset mensaje
mov ah,09h
int 21h
loop ciclo

mov ah,04ch
int 21h
end inicio


jueves, 15 de febrero de 2018

martes, 13 de febrero de 2018

miércoles, 7 de febrero de 2018

Ejercicios de clase

Programa 1(Suma)
ORG 100h 

call inicializar
call sumaraxbx
hlt;Terminar proceso

inicializar:
mov ax,8h
mov bx,9h
ret

sumaraxbx:
add ax,bx
ret




Programa 2(Resta)

ORG 100h 

call inicializar
call restar
hlt;Terminar proceso

inicializar:
mov ax,10
mov bx,12
ret

restar:
sub ax,bx
ret



Programa 3 (Multiplicacion)

ORG 100h

call inicializar
call multaxbx
hlt;terminar proceso

inicializar:
mov ax,8
mov bx,9
ret

multaxbx:
mul bx
ret


Programa 4(Division)

ORG 100h

call inicializar
call divaxbx
hlt;terminar proceso

inicializar:
mov ax,9
mov bx,9
ret

multaxbx:
div bx
ret


PostgreSQL






viernes, 2 de febrero de 2018

Ejemplos de activacion de registros Banderas

;Programa de Acarreo
.model small
.stack
.data
.code
mov al,255
mov bl,1
add al,bl
.exit
end



;Programa de registro cero  y Paridad
.model small
.stack
.data

.code
mov al,2
mov bl,2
sub al,bl
.exit
end


;Programa de operacion aritmetica negativa
.model small
.stack
.data

.code
mov al,1
mov bl,4
sub al,bl
.exit
end


;Programa de operacion desbordamiento
.model small
.stack
.data

.code
mov al,100
mov bl,50
add al,bl
.exit
end

XAMPP