jueves, 3 de febrero de 2011

Ejemplo de uso de direccionamiento indexado

;*******************************************************
; Esta aplicación captura un texto desde el teclado
; cambia las minúsculas por mayúsculas y presenta
; el texto modificado en pantalla.
;
; Elaborado por Fernando Monrroy
; UAGRM verano de 2011
;*******************************************************
.MODEL small
.STACK 100h

.DATA
invi1 DB 10,13,'Ingrese un texto de hasta 80 caracteres desde el teclado',10,13,'$'
ms1 DB 10,13,'El texto en MAYUSCULAS es:',10,13,'$'
mxLon DB 81
nchr DB ?
txto DB 81 DUP(?)
salto DB 10,13,'$'

.CODE
MOV AX,@DATA
MOV DS,AX
MOV AH,9
LEA DX,invi1
INT 21H
MOV AH,10
LEA DX,mxLon
INT 21H
MOV AH,9
LEA DX,ms1
INT 21H
XOR BH,BH
MOV BL,nchr
MOV AL,'$'
MOV txto[BX],AL
lazo: MOV AL,txto[BX]
CMP AL,'a'
JAE uno
mas: DEC BX
JNE lazo
JMP dos
uno: CMP AL,'z'
JA mas
SUB AL,20h
MOV txto[BX],AL
JMP mas
dos: MOV AH,9
LEA DX,txto
INT 21H
LEA DX,salto
INT 21H
MOV AH,1
INT 21H
MOV AH,4ch
INT 21h
END

No hay comentarios:

Publicar un comentario