Contenido>Indice>Intro Tutor

DIRECCIONAMIENTO INDIRECTO POR REGISTRO


El direccionamiento indirecto por registro utiliza los registros R0 o R1 como una dirección de 8 bits. Estos punteros permiten trabajar con los datos situados en los 128 primeros bytes de la RAM interna (µC 8051) o con una página de 256 bytes de la memoria externa. En este último caso, la página es definida por el contenido del puerto P2. Este modo de direccionamiento no nos permite el acceso a los registros de funciones especiales (SFRs). En el código fuente se utiliza el signo " @ " para indicar la utilización de este modo de direccionamento.

Ejemplo:     

MOV R0,#30H  ;Poner el valor 30H mediante direccionamiento inmediato
MOV A, @R0   ;El contenido de la dirección 30H se pone en A

i088.gif (541 bytes)El mismo tipo de direccionamiento es posible con el registro de 16 bits DPTR (DPH-DPL); en este caso, el direccionamiento es aplicable a los 64 Kbytes de la memoria externa.

Las instrucciones de empilado y desenpilado en memoria de pila utilizan este modo de direccionamiento por medio del puntero SP (Stack Pointer).

   


   Contenido>Indice>Intro Tutor