2.3 Captura Basica de Cadenas
-
Upload
frank-diaz -
Category
Documents
-
view
246 -
download
10
description
Transcript of 2.3 Captura Basica de Cadenas
Captura básica de cadenas
Captura básica de cadenas
• En el lenguaje ensamblador el tipo de dato cadena (string) no está definido, pero para fines de programación, una cadena es definida como un conjunto de localidades de memoria consecutivas que se reservan bajo el nombre de una variable.
Instrucciones para el manejo de strings Instrucciones para el manejo de strings El lenguaje ensamblador cuenta con cinco instrucciones para el manejo de cadenas: • LODS (cargar un byte o palabra): carga el registro acumulador (AX o
AL) con el valor de la localidad de memoria determinada por DS:SI se incrementa tras la transferencia.
Operación Equivalente LODSB MOV AL, DS:[SI] INC SI LODSW MOV AX, DS:[SI] ADD SI,2
• STOS (grabar cadena): Graba un carácter de una cadena a la vez, registros que debe inicializar antes de usar la instrucción.
Operación Equivalente STOSB MOV ES:[DI], AL INC DI STOSW MOV ES:[DI], AX ADD DI,2
• MOVS (mover cadena): mueve cadenas entre localidades de memoria, el primer operado es apuntado por ES:DI (destino) y el segundo operando por DS:SI (fuente). Normalmente se utiliza el prefijo REP que hace que la operación se ejecute CX veces (se le resta uno a CX tras cada operación), de forma que según DF sea uno o cero, tras cada trasferencia (byte o palabra) DI y SI disminuyen o aumentan.
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
• SCAS: Busca valor del acumulador en una cadena, los registros que debe inicializar antes de usar la instrucción.
Operación Equivalente SCASB CMP AL, ES:[DI] INC DI SCASW CMP AX, ES:[DI] ADD DI,2
• Las instrucciones para cadenas trabajan en conjunto con la instrucción CLD, la cual permite establecer que el sentido en el que las cadenas serán procesadas será de izquierda a derecha. • Otra instrucción importante es el prefijo de repetición REP, el cual
permite que una instrucción para manejo de cadenas pueda ser repetida un número determinado de veces.