Anda di halaman 1dari 10

Instrucciones de manejo de cadenas

Nombre: Formato: MOVS/MOVSB/MOVSW (MOV BYTE/WORD STRING) MOVS destino, fuente MOVSB/MOSW Descripcin: Transfiere el byte o la palabra apuntada por DS:SI al byte o palabra apuntada por ES:DI. Despus de la transferencia, SI y DI se incrementan o decrementan, segn el valor del indicador DF (DF=0 incremento; DF=1 decremento), el nmero de bytes transferidos. El prefijo REP sirve para repetir la operacin. Operandos: destino, fuente se emplean como referencia, pues por defecto MOVS emplea ES:DI como destino y DS:SI como fuente. Restricciones: ninguna Ejemplos: movsb movs tabla1, tabla2

rea de Arquitectura y Tecnologa de Computadores Departamento de Automtica

Tema 8: Directivas y programas complejos Laboratorio de Estructura de Computadores

Instrucciones de manejo de cadenas (II)


Nombre: Formato: CMPS/CMPSB/CMPSW (COMPARE BYTE/WORD) CMPS destino, fuente CMPSB/CMPSW Descripcin: Comparacin de bytes o palabras de cadenas. Actan como CMP pero con cadenas apuntadas por DS:SI para la fuente y ES:DI para el destino. Despus de la comparacin, SI y DI son incrementados (DF=0) o decrementados (DF=1). Puede ir precedida por REP. Operandos: destino, fuente se emplean como referencia, pues por defecto CMPS emplea ES:DI como destino y DS:SI como fuente. Restricciones: ninguna Ejemplos: cmps cadena1, cadena2 cmpsb cmpsw

rea de Arquitectura y Tecnologa de Computadores Departamento de Automtica

Tema 8: Directivas y programas complejos Laboratorio de Estructura de Computadores

Instrucciones de manejo de cadenas (III)


SCAS/SCASB/SCASW (SCAN BYTE/WORD) SCAS destino SCASB/SCASW Descripcin: anlisis de un byte o de una palabra de una cadena. Ejecuta la substraccin AL-destino para un byte, o AX-destino para una palabra. No almacena el resultado, pero posiciona los flags. Esto permite comparar los bytes o palabras sucesivas de una cadena. Puede ir precedida de REP para la repeticin. ES:DI apunta a la cadena destino. Operandos:
destino se emplean como referencia, pues por defecto SCAS emplea ES:DI como destino.

Nombre: Formato:

Restricciones: ninguna Ejemplos: scas cadena sacsb

rea de Arquitectura y Tecnologa de Computadores Departamento de Automtica

Tema 8: Directivas y programas complejos Laboratorio de Estructura de Computadores

Instrucciones de manejo de cadenas (IV)


Nombre: Formato: LODS/LODSB/LODSW (LOAD BYTE/WORD TO AL/AX) LODS fuente LODSB/LODSW Descripcin: carga de un byte o de una palabra de una cadena. Transfiere un byte o una palabra de una cadena apuntada por DS:SI al acumulador AL o AX. Despus incrementa o disminuye SI, segn el estado del indicador DF, en 1 (byte) o en 2 (palabra). Para la repeticin puede ir precedida por REP. Operandos:
fuente se emplean como referencia, pues por defecto LODS emplea DS:SI como destino.

Restricciones: ninguna Ejemplos: lods cadena lodsb

rea de Arquitectura y Tecnologa de Computadores Departamento de Automtica

Tema 8: Directivas y programas complejos Laboratorio de Estructura de Computadores

Instrucciones de manejo de cadenas (V)


STOS/STOSB/STOSW (STORE BYTE/WORD FROM AL/AX) STOS destino STOSB/STOSW Descripcin: almacenamiento de un byte o de una palabra en una cadena. Transfiere un byte (AL) o una palabra (AX) a una cadena apuntada por ES:DI. Despus de la ejecucin se incrementa o disminuye DI, segn el estado del indicador DF, en 1 (byte) o en 2 (palabra). Para la repeticin puede ir precedida por REP. Operandos:
destino se emplean como referencia, pues por defecto STOS emplea ES:DI como destino.

Nombre: Formato:

Restricciones: ninguna Ejemplos: stos cadena stosw

rea de Arquitectura y Tecnologa de Computadores Departamento de Automtica

Tema 8: Directivas y programas complejos Laboratorio de Estructura de Computadores

Instrucciones de manejo de cadenas (VI)


Nombre: REP/REPZ/REPE/REPNZ/REPNE (REPEAT) Formato: REP/REPZ/REPE/REPNZ/REPNE instruccin de cadena Descripcin: Prefijo que impone la repeticin de una instruccin de cadena mientras que el contenido del contador CX, disminuido en cada pasada, no llegue a cero. Esta repeticin puede ser incondicional (REP) o condicional (REPZ/REPE o REPNZ/REPNE). Operandos: no tiene Restricciones: solo aplicable a instrucciones de cadena Ejemplos: rep movsb ; rep como prefijo rep ;primero rep movs ; y luego instruccin de cadena

rea de Arquitectura y Tecnologa de Computadores Departamento de Automtica

Tema 8: Directivas y programas complejos Laboratorio de Estructura de Computadores

Ejemplos de manejo de cadenas. Inicializar (I)


.data longitud equ 27 origen1 db "esta es la cadena a iniciar" origen2 db "esta es la cadena a iniciar" .code inicio: mov ax, @data mov ds, ax mov es, ax cld xor cx, cx mov cl, longitud lea di, origen1 mov al, 'A' rep stosb
rea de Arquitectura y Tecnologa de Computadores Departamento de Automtica Tema 8: Directivas y programas complejos Laboratorio de Estructura de Computadores

Ejemplos de manejo de cadenas. Buscar (II)


.data longitud equ 34 origen1 db "esta es la cadena en la que buscar" caracter db 'q' .code inicio: mov ax, @data mov ds, ax mov es, ax cld xor cx, cx mov cl, longitud mov al, caracter lea di, origen1 repnz scasb
rea de Arquitectura y Tecnologa de Computadores Departamento de Automtica Tema 8: Directivas y programas complejos Laboratorio de Estructura de Computadores

Ejemplos de manejo de cadenas. Comparar (III)


.data longitud equ 28 origen1 db "esta es la cadena a comparar" origen2 db "esta es la cadena comparada." .code inicio: mov ax, @data mov ds, ax mov es, ax cld xor cx, cx mov cl, longitud lea si, origen1 lea di, origen2 repz cmpsb
rea de Arquitectura y Tecnologa de Computadores Departamento de Automtica Tema 8: Directivas y programas complejos Laboratorio de Estructura de Computadores

Ejemplos de manejo de cadenas. Copiar (IV)


.data longitud equ 26 origen db "esta es la cadena a copiar" destino1 db longitud dup(0) destino2 db longitud dup(0) .code inicio: mov ax, @data mov ds, ax mov es, ax cld xor cx, cx mov cl, longitud lea si, origen lea di, destino1 rep movsb
rea de Arquitectura y Tecnologa de Computadores Departamento de Automtica Tema 8: Directivas y programas complejos Laboratorio de Estructura de Computadores

Anda mungkin juga menyukai