Professional Documents
Culture Documents
Objetivos:
- Referenciar un rango elevado de posiciones de memoria principal
(número de bits para el direccionamiento limitado).
- Dar soporte a las estructuras de datos de alto nivel.
Puede ser:
- Para datos, sobre los que opera la instrucción.
- Para instrucciones, especifica la dirección de la siguiente
instrucción a ejecutar (en instrucciones de control).
Veremos:
- Aspectos del almacenamiento de datos en memoria: alineación y
orden de los bytes.
- Los distintos modos de direccionamiento.
1
2
A simple vista, lo lógico sería que en la propia instrucción se
especificase el operando, su dirección en memoria o el registro que lo
contiene.
4
Convenios para clasificar los bytes de una palabra:
- Little Endian: La dirección de un dato es la dirección de la parte
menos significativa del dato
- Big Endian: La dirección de un dato es la dirección de la parte más
significativa del dato
6
El alineamiento permite simplificar los accesos a memoria: hardware
más sencillo y la misma velocidad de acceso para cualquier palabra en
memoria.
Ejemplo ‘little-endian’:
8
2.4.3. Descripción de los distintos modos de direccionamiento
10
(1) Direccionamiento por registro
OPERANDO = (R)
n bits del campo de dirección necesarios para referenciar 2n registros
OPERANDO = Operand
13
EA = A
EA = (R)
Supera la limitación del nº de bits para especificar la dirección y un solo
acceso a memoria para obtener el operando.
EA = (A)
Desventaja: dos accesos a memoria, para obtener el operando.
EA = (R) + A
Ejemplo: add r4,28(r1) equivale a r4 = r4 + M[28+r1]
Para tratar vectores: el registro puede apuntar al principio del vector y el
desplazamiento selecciona el elemento correspondiente.
17
18
(8) Direccionamiento indexado
19
21
22
(3) Direccionamiento base (+desplazamiento)
23
24
Este modo de direccionamiento se utiliza en instrucciones de
bifurcación.
25
26