Salida inversa de una cadena en lenguaje ensamblador

Segmento de datos

XX DB 0AH, 0DH, "Ingrese la cadena: $ "

BVF DB 30

DB?

DB 30 DUP(?)

Fin de datos

Pila de segmentos SSEG

STK DB 100 DUP(?)

Fin de SSEG

Segmento de código

Asumir CS: código, DS: datos, SS: SSEG

Inicio:

MOV Ax, datos

MOV DS, AX

LEA DX, XX

MOV, 9

INT 21H

LEA DX de BVF

MOV, 0AH

INT 21H

BVF MOV ciudad +1

También hay CX, 0FH

CX MOV·BX

Sumar BX, 1; determina el valor de BX y encuentra la posición de desplazamiento del último elemento.

Marca: MOV, 2

MOV DL, BVF[BX]; debe haber uno de los registros bx, si y di entre paréntesis.

INT 21H

BX Diciembre; el puntero avanza.

Marca de bucle

MOV, 1

INT 21H; haga una pausa y observe los caracteres de salida. Si no, pasará en un instante.

MOV, 4CH

INT 21H

Fin del código

Empieza el fin