sábado, 14 de abril de 2018

loop seleccionar mensaje





pila segment stack 'stack'
    db 100h dup (?)
pila ends

datos segment             ;texto e instrucciones.
 av db 13,10,' Presione 1 o 2 ',13,10,'$'
    msj db 13,10,' Lenguaje ensamblador ',13,10,'$'
    m db 13,10,' Lenguaje de Interfaz ',13,10,'$'
datos ends


codigo segment ;segmento de codigo
    assume cs:codigo, ss:pila, ds:datos

    inicio:
  
        mov ax, datos
        mov ds, ax
      
        lea dx,av
        mov ah,9h
        int 21h
      
        mov ah,08   ;pausa y captura datos 08 espera que el usuario presione una tecla
        int 21h
      
        cmp al,49      ;verifica si presiono 1
        je pOpcion

        cmp al,50      ;verifica si presiono 2
        je sOpcion    
      
         jmp fin           ;finaliza en caso de no recibir respuesta de enter o 2

    fin:  
       mov ax,4c00h
       int 21h
                        
    pOpcion:
        CALL PO
      
    sOpcion:
        CALL SO

      
    PO PROC NEAR
        mov ah, 9h
        lea dx, msj
        mov cx, 12
  print_LOOP:
          int 21h
          loop print_LOOP
          mov ax,4c00h
          int 21h
          RET
    PO ENDP


  SO PROC NEAR
        mov ah, 9h
       lea dx, m
       mov cx, 12
  pLOOP:
       int 21h
       loop pLOOP   
       mov ax,4c00h
       int 21h                             
       RET
   SO ENDP


codigo ends
end inicio

No hay comentarios.:

Publicar un comentario

Macro Potencia de un numero

name "potencia" include "emu8086.inc" include "macroos.txt" .model small data segment     base  dw ? ...