Sunteți pe pagina 1din 19

Unidad 1: Introduccin al lenguaje ensamblador.

1.1 Importancia de la programacin en lenguaje ensamblador. 1.2 El procesador y sus registros internos 1.3 La memoria principal (RAM) 1.4 El concepto de interrupciones 1.5 Llamadas a servicios del sistema 1.6 Modos de direccionamiento 1.7 Proceso de ensamblado y ligado 1.8 Desplegado de mensajes en el monitor

1.6 Modos de direccionamiento

ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos .

Inmediato Directo Indirecto Registro Registro Indirecto Desplazamiento (Indexado)


ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos .

Para programa en ensamblador trabajamos con


los registros del procesador, a travs de estos manipulamos los datos que se encuentran en la memoria. Para utilizar los datos de la memoria se utilizan dos tcnicas: La segmentacin y el direccionamiento.
ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos .

Un

segmento es una rea especial de la memoria en un programa, que comienza en una posicin de memoria divisible entre 16 (10H) Un segmento puede estar ubicado en casi cualquier lugar de la memoria y puede ser de mnimo 16 bytes y alcanzar hasta 64kB de longitud. Por tanto, solo necesitamos 16 bits para especificar la direccin de comienzo de un segmento
ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos .

MEMORIA 00000H
SEGMENTO 1 SEGMENTO 2 SEGMENTO 3 SEGMENTO 4 ---

16 Bytes 16 Bytes 16 Bytes

FFFFH
ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos .

En

uno de los temas anteriores vimos que los registros de segmentos son registros que apuntan a localidades de memoria, los principales son los siguientes:
CS DS ES SS Segmento de Codigo segmento de Datos Segmento Extra o adicional Segmento de Pila

Estos segmentos de memoria es donde almacenamos los datos de nuestro programa


ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos .

Desplazamientos (Offsets)
Todas las direcciones de memorias estn referidas a la direccin de comienzo de algn segmento, La distancia en bytes desde la direccin de inicio del segmento se define como el offset o desplazamiento

ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos . MEMORIA 00000H DS

SEGMENTO DE DATOS

CS CS:IP SS

SEGMENTO DE CODIGO

SEGMENTO DE PILA --ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos

Los modos de Direccionamiento: Para que el microprocesador ejecute correctamente las instrucciones y entregue los resultados esperados, es necesario que se indique la fuente o el origen de los datos con los que va a trabajar, a esto se le conoce como direccionamiento de datos
ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos

Los modos de direccionamiento determinan el lugar en que reside un operando, un resultado o la siguiente instruccin a ejecutar segn sea el caso.

ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos

Una de las instrucciones mas utilizadas en ensamblador es MOV. Que permite transferir o copiar informacin entre dos variables o datos directos colocados por el programador. Y su formato general es el siguiente:

Mov Oper1, Oper2


Esta instruccin copia el contenido del Oper2 en Oper1
ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos

Direccionamiento Directo El campo de direcciones contiene la direccin del operando La direccin efectiva (EA) = campo de direccin (A) ejemplo. - Mov Ax,[1000h] ; copia en Ax lo que se encuentre en la ; direccin 1000h o DS:1000h

ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos

Direccionamiento Directo Una sola referencia a memoria para acceder a los datos No se hacen clculos adicionales para trabajar la direccin efectiva

ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos

Direccionamiento Inmediato
En este modo, los datos son proporcionados directamente como parte de la instruccin por ejemplo Mov Ax,34h ; copia en Ax el nmero 34h Hex Mov Cx,10 decimal ;copia en CX el numero 10

No hay referencia a memoria para extraer datos Rpido


ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos


Direccionamiento de Registro (1) En este modo de direccionamiento , el segundo operando en un registro, el cual contiene los datos con los que el microprocesador ejecutar la instruccin Por ejemplo> Mov AX,BX ; copia en AX el contenido del registro BX Nmero limitado de registros Se requiere un campo de direcciones muy pequeo Instrucciones ms cortas Extraccin de instrucciones ms rpida
ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos


Direccionamiento Indirecto En el modo por indirecto por registro, el segundo operando es un registro el cual contiene la direccion de desplazamiento correspondiente a los datos para la instruccin Mov Ax,[BX] ; copia en Ax el dato que se encuentre ; en la localidad de memoria de BX En otras palabras el dato que contiene BX es la direccion de memoria donde esta el dato a copiar en AX
ING. JUAN ANTONIO SALINAS CORREA

1.6 Modos de direccionamiento y formatos

Gracias por su atencin

ING. JUAN ANTONIO SALINAS CORREA

1.2 El procesador y sus registros internos

Fuente de informacin Los Microprocesadores Intel Arquitectura, Programacin e Interface Tercera Edicin Autor: Barry B. Brey Editorial Prentice Hall

ING. JUAN ANTONIO SALINAS CORREA

S-ar putea să vă placă și