Ingrese algunos caracteres en lenguaje ensamblador para calcular su longitud
SEGMENTO DE DATOS
MAXLEN?DB?200
ACTLEN?DB?
DB?200?DUP(?)
INFO1 DB?0AH, 0DH, 'entrada?AH, 0DH, 'Longitud de cadena:'
N?DB?20H, 20H, 20H, '$'
FIN DE DATOS
SEGMENTO DE PILA?DUP(0)
TERMINOS DE PILA
SEGMENTO DE CÓDIGO
¿ASUMAR?CS: CÓDIGO, DS: DATOS, SS: PILA
INICIO: MOV AX, DATOS
MOV?DS, AX
LEA?DX, INFO1
MOV ?AH, 09H
INT?H
LEA?DX, MAXLEN
MOV?AH, 0AH; Carácter de entrada
INT? 21H
;******************
MOV?SI, 2
MOV?BL, 10
MOV?AH, 0
MOV?AL, ACTLEN
NEXT: DIV?BL
ADD?AH, 30H Convertir número; a ASCII
MOV?N[SI], AH
DEC?SI
CMP?AL, 9
JLE?FIN
MOV?AH, 0
JMP?NEXT
FIN: ADD?AL, 30H
MOV?N[(SI), AL
MOV?SI], AL
LEA?DX, INFO2
MOV?AH, 09H
INT?H; el resultado final
MOV?AH, 4CH Fin del programa
INT?21H
CODE FINDS
END?START
p>Resultado de ejecutar el programa: