Búsqueda de ejemplos en Ensamblador
;Autor Angel Alvarado (Angelverde)
;URL http://angelverde.info

title hola
.model small
.stack 128
.data
pide DB 'Dame tu contraseña: $'
preg DB '¿Quieres ver tu contraseña?(S/n): $'
con  DB '          $'
avi  DB 'Su contraseña fue: $'
ban  DB 00
.code
MAIN PROC FAR
    MOV AX,@data
    MOV DS,AX
    MOV ES,AX
    ; inicia programa
   
    ; limpia pantalla
    CALL LIM
   
    ;colocar cursor
    MOV DX,0A12H
    CALL CUR
   
    ; imprime solicitud
    LEA DX,pide
    CALL IMP
   
    ; lee contraseña
    CALL LEE
   
    ; pregunta salir o mostrar
    MOV DX,0B10H
    CALL CUR
    LEA DX,preg
    CALL IMP
   
    ; leer opcion
    CALL PRE
    CMP ban,01
    JNE FIN
    ; Opcion Si, continua
   
    ; Nueva pantalla y mostrar contraseña
    CALL LIM
    MOV DX,0A12H
    CALL CUR
    LEA DX,avi
    CALL IMP
    LEA DX,con
    CALL IMP    
   
    ;finalizar programa
FIN:
    mov ah,0
    INT 16H
    MOV AX,4C00H
    int 21h
MAIN ENDP

LIM PROC NEAR
    MOV AX,0600H
    MOV BH,71H
    MOV CX,0000H
    MOV DX,184FH
    INT 10H
    RET
LIM ENDP

CUR PROC NEAR
    MOV AH,02
    MOV BH,00
    INT 10H
    RET
CUR ENDP

IMP PROC NEAR
    MOV AH,09H
    INT 21H
    RET
IMP ENDP

LEE PROC NEAR
    MOV CL,0                    
    MOV SI,0
otro:
    MOV AH,07H
    INT 21H
    CMP AL,13
    JE salir
   
    mov con[SI],al ;concatenar cadena
   
    mov dl,2ah ;imprimir asterisco
    mov ah,02h
    int 21H
   
    inc SI
    inc cl
   
    cmp cl,10
    jne otro
salir:
    RET
LEE ENDP

PRE PROC NEAR
    MOV AH,07H     ;leer opcion
    INT 21H
    MOV DL,AL      ;imprimir leido
    MOV AH,02H
    INT 21H
   
    CMP AL,110      ; compara con N y n
    JE  salir2
    CMP AL,78
    JE  salir2
    MOV ban,01  
salir2:
    RET
PRE ENDP
; Benemerita Universidad Autonoma de Puebla
; Angelverde
; http://angelverde.info