Unidad 2 Lenguaje Ensamblador

Páginas: 30 (7459 palabras) Publicado: 18 de septiembre de 2011
Lenguaje Ensamblador

UNIDAD II ELEMENTOS DEL LENGUAJE
2.1 INSTRUCCIONES LINEALES.
2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 Movimientos. Pila. Matemáticos. Ajustes. Comparación.

2.2

SALTOS.
2.2.1 2.2.2 Incondicionales. Condicionales.

2.3

TIPOS DE CICLOS.

2.4 OPERADORES LÓGICOS. 2.5 DESPLAZAMIENTO.
2.5.1 2.5.2 Lineal. Circular.

2.6 PROCESOS DE CONTROL.
2.6.1 2.6.2 Banderas. Cadenas. Lenguaje Ensamblador

2.1 INSTRUCCIONES LINEALES.
2.1.1 Movimientos.
MOV (transferencia).
Sintaxis: Indicadores: MOV destino, origen OF DF IF TF SF ZF AF PF CF - - - - - - - -

La instrucción de transferencia de datos por excelencia es MOV. Transfiere datos de longitud byte o palabra del operando origen al operando destino. Pueden ser operando origen y operando destino cualquierregistro o posición de memoria direccionada de las formas ya vistas, con la única condición de que origen y destino tengan la misma dimensión. Con la instrucción MOV diremos que se pueden realizar todo tipo de movimientos teniendo en cuenta las siguientes restricciones: 1. No se puede realizar una transferencia de datos entre dos posiciones de memoria directamente, por esta razón, siempre que queramosefectuarlas tendremos que utilizar un registro intermedio que haga de puente. Por ejemplo, para hacer la operación DATO1 ← DATO2 la instrucción MOV DATO2, DATO1 sería incorrecta. Lo que sí sería correcto sería utilizar el registro DX, u otro, como puente y hacer: MOV DX, DATO1 MOV DATO2, DX 2. Tampoco se puede hacer una transferencia directa entre dos registros de segmento. Por eso, como en el casoanterior, si fuera preciso se utilizaría un registro como puente. 3. Asimismo, tampoco se puede cargar en los registros de segmento un dato utilizando direccionamiento inmediato, es decir, una constante, por lo que también habrá que recurrir a un registro puente cuando sea preciso. Existen ciertas limitaciones, como que los registros de segmento no admiten el direccionamiento inmediato: esincorrecto MOV DS, 4000h; pero no lo es por ejemplo MOV DS, AX o MOV DS, VARIABLE. No es posible, así mismo, utilizar CS como destino (es incorrecto hacer MOV CS, AX aunque pueda admitirlo algún ensamblador). Al hacer

M. D. O. H. Sonia Alvarado Mares

78

Lenguaje Ensamblador
MOV hacia un registro de segmento, las interrupciones quedan inhibidas hasta después de ejecutarse la siguienteinstrucción (8086/88 de 1983 y procesadores posteriores). Ejemplos: MOV MOV MOV DS, AX BX, ES:[SI] SI, OFFSET DATO

En el último ejemplo, no se coloca en SI el valor de la variable dato sino su dirección de memoria o desplazamiento respecto al segmento de datos. En otras palabras, SI es un puntero a DATO pero no es DATO. En el próximo capítulo se verá cómo se declaran las variables.

XCHG(intercambiar).
Sintaxis: Indicadores: XCHG destino, origen OF DF IF TF SF ZF AF PF CF - - - - - - - -

Una instrucción útil pero no imprescindible es XCHG. Intercambia el contenido de los operandos origen y destino. No pueden utilizarse registros de segmentos como operandos. Por ejemplo, si queremos intercambiar los contenidos de los registros AX y BX, podemos hacer: MOV AUX, AX MOV AX, BX MOV BX, AUX endonde AUX es una variable auxiliar que hace de puente, o simplemente utilizar: XCHG AX, BX Otro ejemplo: XCHG XCHG BL, CH MEM_PAL, BX

Las restricciones que presenta esta operación es que no se pueden efectuar intercambios directamente entre posiciones de memoria ni tampoco entre registros de segmento.

XLAT (traducción).
Sintaxis: Indicadores: XLAT tabla OF DF IF TF SF ZF AF PF CF - - - - - -- -

M. D. O. H. Sonia Alvarado Mares

79

Lenguaje Ensamblador
La instrucción XLAT tabla carga en el registro AL el contenido de la posición [BX][AL], en donde el registro BX ha de apuntar al comienzo de una tabla. Dicho de otra manera, AL hace de índice de la tabla y de almacén destino del contenido de la tabla. Por ejemplo, el siguiente programa: DATOS SEGMENT TABLA DB 2, 3, 5, 8,...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Prueba De Lenguaje 2 Unidad
  • Lenguaje Musical Unidad N 2
  • Act 7: Reconocimiento Unidad No. 2
  • Primera Unidad De Lenguaje Ensamblador
  • Lenguaje ensamblador
  • Lenguaje Ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS