miércoles, 28 de febrero de 2018

M E N U




CODIGO 

;PRACTICA EN CLASE
;MENU
;SARAHI CRUZ MEDINA Y LUZ EDITH PEREZ

pila segment stack "stack" ;segmento de pila
    db 100h dup (?) 
pila ends

datos segment
    MENU db 13,10," -MENU- ",13,10 ,"$"
    MSG1 db 13,10," OPRIMA 1 PARA PANTALLA AZUL ",13,10 ,"$"
    MSG2 db 13,10," OPRIMA 2 PARA PANTALLA ROJA ",13,10 ,"$"
datos ends

codigo segment ;
    assume cs:codigo, ss:pila, ds:datos
   
    inicio:
           ;...........................................preparar pantalla
           mov ah,0
               mov al,3h 
               int 10h 
              
               mov ax,0600h ;limpiar pantalla
               mov bh,0fh ;0 color de fondo negro, F color de letra blanco
                          ;4 bits para color de pantalla 
                          ;y 4 para el color de la letra
               mov cx,0000h
               mov dx,784fh
               int 10h
              
               mov ah,02h        
               mov bh,00        
               mov dh,00        
               mov dl,00
               int 10h
              
             ;..............................................mostrar mensajes
           mov ax,datos
           mov ds,ax
              
           lea dx,MENU
           mov ah,9h
           int 21h
              
           lea dx,MSG1
           mov ah,9h
           int 21h
          
           lea dx,MSG2
           mov ah,9h
           int 21h
              ;.........................................captura de teclas
                mov ah,08 ;pausa y captura 
                int 21h
               
                cmp al,49 ;verifica si presiono el numero 1
                          ;ascii 49= numero 1 
                je llamarAzul ;
               
                cmp al,50 ;ascii 50= numero 2 compara lo que tiene el registro ah con el ascii 50 en el reg ah
                je llamarMorado
               
                jmp fin  ;si no escoge ni 1 ni 2, sale del programa
               
         fin:  ;saca el mensaje por pantalla
        
              mov ax,4c00h
              int 21h
llamarAzul:
    CALL AZULPROC
llamarMorado:
    CALL MORADOPROC   

;........................................................................
AZULPROC PROC NEAR
   
mov ah,0
              mov al,3h ;modo texto
              int 10h  ;interrupcion de video
             
              mov ax,0600h ;limpiar pantalla
              mov bh,0fh ;0 color de fondo negro, f color de letra blanco
              mov cx,0000h
              mov dx,184fh
              int 10h
             
              mov ah,02h
              mov bh,00
              mov dh,00
              mov dl,00
              int 10h  
;MENSAJE             
    
 
  

;;;;;;//////////////
              mov ah,06h   
              mov bh,9fh      
              mov cx,0000h
              mov dx,184fh   
              int 10h  

  
  
  
              mov ax,4c00h
              int 21h 
             
             
             
RET

AZULPROC ENDP

;----------------------------------
MORADOPROC PROC NEAR
           mov ah,06h   
           mov bh,4FH,      
           mov cx,0000h   
           mov dx,184fh   
           int 10h  
          
           mov ax,4c00h   
           int 21h 
          
           ;MENSAJE             
  
RET

MORADOPROC ENDP

codigo ends

end inicio


martes, 27 de febrero de 2018

Practica de 3 Etiquetas.


Se le agregaron 3 etiquetas  y se le cambio el color.

CODIGO EN EL ESAMBLADOR

;PRACTICA EN CLASE
;3 ETIQUETAS
;SARAHI CRUZ MEDINA

CR EQU 13
LF EQU 0Ah
IMPRIMIR EQU 9
FIN EQU 4C00H
DOS EQU 21H

DATOS SEGMENT 
   
    MENSAJE DB CR,LF,' SARAHI CRUZ MEDINA', CR, LF, '$'
   

    MENSAJE2 DB CR,LF,' LUZ EDITH PEREZ SOTO', CR, LF, '$'
   

    MENSAJE3 DB CR,LF,' VALERIA ESMERALDA VARGAS REQUENA', CR, LF, '$'
DATOS ENDS
   
PILA SEGMENT STACK
    DB 64 DUP ("PILA")
PILA ENDS

CODIGO SEGMENT
    HM PROC FAR
    ASSUME CS: CODIGO, DS:DATOS, SS:PILA
              MOV ah,06H ;MANEJA SCROLL
              mov bh,4fh ;4 Bits para el color de la pantalla 
                         ;y 4 para el color de la letra
                         ;2 color verde fondo y f letras blanco
              mov cx,0000h;ESQUINA SUPERIOR IZQ
              mov dx,999fh;esquina inf derecha
              int 10h ;modo de video,cosas de pantalla
              mov ah,02h ;posicionar el cursor
              mov bh,00h ;pone el modo de vi
              mov dx,0000h
              int 10h
  
    ;EMPIEZA LOS LETREROS
    MOV AX,DATOS
    MOV DS,AX            
   
    LEA DX,MENSAJE
    MOV AH,9
    INT 21H
   
    lea dx,MENSAJE2
    MOV AH,9
    INT 21H
   
    LEA DX,MENSAJE3
    MOV AH,9
    INT 21H
   
    MOV AX,4C00H
    INT 21H
   
  
    HM ENDP
CODIGO ENDS

END HM