manejo de cadenas equipo 7 villanueva martínez yesenia nallely olvera hernández maribel acevedo...
TRANSCRIPT
![Page 1: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/1.jpg)
MANEJO DE CADENASMANEJO DE CADENAS
Equipo 7Equipo 7
Villanueva Martínez Yesenia NallelyVillanueva Martínez Yesenia NallelyOlvera Hernández MaribelOlvera Hernández Maribel
Acevedo Chávez José ErnestoAcevedo Chávez José ErnestoÁvila Puente Tomas EduardoÁvila Puente Tomas Eduardo
Ortiz Alvarado Francisco JavierOrtiz Alvarado Francisco JavierRomero Álvarez AntonioRomero Álvarez Antonio
![Page 2: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/2.jpg)
Operaciones para Cadenas: LODS, STOS, MOVS, CMPS, SCAS, INS, OUTS
Operación Auxiliar: CLD (Auto-incrementa SI y/o DI), STD (Auto-decrementa SI y/o DI)
; INICIALIZACION CLD ; AUTO-INCREMENTO MOV SI, STR ; INICIO-CADENA LODSB ; OPERACION: AL=MEM[SI++]
![Page 3: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/3.jpg)
LODS LODS: LOaD String. Lee un caracter a la vez en
el acumulador
Registros Implicados: Registros que debe inicializar antes de usar la instrucción
Bit-D: Auto-decremento (STD) o auto-incremento (CLD) de SI
AL/AX/EAX: Dato consultado. LODSB usa AL, LODSW usa AX, LODSW usa EAX
DS:SI: Apunta al elemento actual de la cadena consultada
![Page 4: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/4.jpg)
Tabla 1. Variantes de LODSB
Operación Equivalente LODSB MOV AL, DS:
[SI] INC SI
LODSW MOV AX, DS:[SI] ADD SI,2
![Page 5: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/5.jpg)
STOSSTOS: STOre String. Graba un caracter de una
cadena a la vez
Registros Implicados: Registros que debe inicializar antes de usar la instrucción
Bit-D: Auto-decremento (STD) o auto-incremento (CLD) de DI
AL/AX/EAX: Dato consultado. STOSB usa AL, STOSW usa AX, STOSW usa EAX
ES:DI: Apunta al elemento actual del bloque de memoria a grabar
![Page 6: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/6.jpg)
Tabla 2. Variantes de STOSB
Operación Equivalente STOSB MOV ES:[DI],
AL INC DI
STOSW MOV ES:[DI], AX ADD DI,2
![Page 7: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/7.jpg)
SCASSCAS: SCAn String. Busca valor del
acumulador en una cadena
Registros Implicados: Registros que debe inicializar antes de usar la instrucción
Bit-D: Auto-decremento (STD) o auto-incremento (CLD) de DI
AL/AX/EAX: Dato a comparar. SCASB usa AL, SCASW usa AX, SCASW usa EAX
ES:DI: Indice para la cadena donde se buscará el dato
![Page 8: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/8.jpg)
Tabla 3. Variantes de SCASOperación Equivalente
SCASB CMP AL, ES:[DI] INC DI
SCASW CMP AX, ES:[DI] ADD DI,2
![Page 9: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/9.jpg)
REP SCAS REP SCAS: REPite búsqueda de un dato
mientras sea diferente (REPNE) o igual (REPE) en una cadena. Termina búsqueda si el dato es igual (REPNE), diferente (REPE) o el contador CX es cero
Registros Implicados: Registros que debe inicializar antes de usar la instrucción
Bit-D: Auto-decremento (STD) o auto-incremento (CLD) de DI
AL/AX/EAX: Dato a comparar. SCASB usa AL, SCASW usa AX, SCASW usa EAX
ES:DI: Indice para la cadena donde se buscará el dato
CX: Máximo no. comparaciones = Tamaño de la cadena
![Page 10: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/10.jpg)
Tabla 4. Variantes de REP SCAS Operación Equivalente REPE SCASB CYCLE: CMP AL,
ES:[DI] JE END INC DI LOOP CYCLE
REPNE SCASB CYCLE: CMP AL, ES:[DI] JNE END INC DI LOOP CYCLE
![Page 11: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/11.jpg)
MOVSMOVe String. Transfiere una cadena de [SI] a
[DI]. Nota: Existe MOVSB, MOVSW y MOVSD. Además, no se modifica el registro AX
Registros Implicados: Registros que debe inicializar antes de usar la instrucción
Bit-D: Auto-decremento (STD) o auto-incremento (CLD) de SI/DI
DS:SI: Indice para la cadena origen
ES:DI: Indice para la cadena origen
![Page 12: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/12.jpg)
Tabla 5. Variantes de MOVSB Operación Equivalente MOVSB MOV ES:[DI], DS:[SI]
INC SI INC DI
MOVSW MOV ES:[DI], DS:[SI] ADD SI,2 ADD DI,2
![Page 13: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/13.jpg)
REP MOVSREP MOVS: Copia una cadena en una sóla
instrucción. El número de caracteres a copiar se especifica en el registro CX.
Registros Implicados: Registros que debe inicializar antes de usar la instrucción
Bit-D: Auto-decremento (STD) o auto-incremento (CLD) de SI/DI
DS:SI: Indice para la cadena origenES:DI: Indice para la cadena origenCX: Tamaño de la cadena
![Page 14: MANEJO DE CADENAS Equipo 7 Villanueva Martínez Yesenia Nallely Olvera Hernández Maribel Acevedo Chávez José Ernesto Ávila Puente Tomas Eduardo Ortiz Alvarado](https://reader035.vdocuments.pub/reader035/viewer/2022081518/54fda2554a7959ca428b56d3/html5/thumbnails/14.jpg)
Tabla 6. Variantes de MOVSB
Operación Equivalente
REP MOVSB CICLO: MOV ES:[DI], DS:[SI] INC SI INC DI LOOP CICLO