Programa ensamblador para clasificar el número de letras mayúsculas y minúsculas, números y otros caracteres en una cadena.
;Defina la cadena sin ingresar el teclado y guarde los resultados en un medio X1, X2, X3, X4
Segmento de datos
buf db 'asdg123456,^amp;$#$'
X1 db 0
X2 db 0
X3 db 0
X4 db 0
Fin de los datos
Segmento de código
Asumir cs: código, ds: datos
inicio:
mov ax, data
mov ds, ax
lea bx, buf localiza el primer carácter
mov cx, ,'a'
jb next1
cmp al,'z'
ja next1
inc X1 ;menos que a es mayor que z salta al siguiente elemento; de lo contrario, X1 1
jmp exit
next1:
cmp al, 'A'
jb next2
cmp al, 'Z'
ja next2
inc X2; menor que A mayor que Z salta al siguiente elemento, de lo contrario X2 1
salida jmp
siguiente2:
cmp al, '0'
jb siguiente3
cmp al, ' 9'
ja next3
inc X3; menor que 0 y mayor que 9 salta al siguiente elemento, de lo contrario X3 1
jmp exit
siguiente3:
inc X4; el resto son otros caracteres, X4 1
salir:
inc bx
bucle lop ; bucle
mov ax, 4c00h
int 21h
el código termina
fin de inicio