Вы находитесь на странице: 1из 22

IC - UFF

Parte 1:
Organizao de Computadores
6. Modos de endereamento



Texto base: captulo 10
Computer Organization and Architecture
W. Stallings

IC - UFF
Acessando dados
Questo: como especificar os operandos?
Em um formato de instruo tpico, o
espao de endereamento bem
limitado:
queremos enderear toda a memria virtual
queremos enderear determinadas estruturas
de dados mais facilmente
queremos rapidez, enfim, queremos ...
COp Endereo
IC - UFF
Modos de endereamento
Imediato
Direto
Indireto
Registrador
Registrador indireto
Deslocamento
...
IC - UFF
Imediato
Operando
Instruo
COp
IC - UFF
Modo imediato
Operando parte da instruo: campo de
endereo
Nenhum outro acesso memria feito
alm da busca da instruo
Maior rapidez
Tamanho dos operandos limitado ao
tamanho do campo de endereos
IC - UFF
Direto
End
Memria
Instruo
Operando
COp
IC - UFF
Modo direto
Campo de endereo contm o endereo
efetivo do operando
S uma referncia memria feita
Espao de endereamento limitado
IC - UFF
Indireto
Instruo
End
Memria
Operando
COp
Apontador
IC - UFF
Modo indireto
Campo de endereo referencia um
apontador em memria, que referencia o
operando
Para uma palavra de tamanho N, um
espao de endereamento de 2
N

acessvel
Duas referncias memria so feitas:
mais lento
IC - UFF
Registrador
R
Registradores
Instruo
Operando
COp
IC - UFF
Modo registrador (1)
Similar ao endereamento direto,
contudo o campo de endereo refere-se a
um registrador em vez de memria
Como h nmero limitado de
registradores, campo de endereo (por
registrador) pequeno
No h necessidade de referncias
memria maior rapidez
IC - UFF
Modo registrador (2)
importante que dados sejam mantidos
nos registradores: se trazidos e levados
de/para a memria ineficncia!
Papel do compilador e do programador
em linguagem de montagem
IC - UFF
Registrador indireto
Operando
R
Registradores Memria
Instruo
COp
Apontador
IC - UFF
Modo registrador indireto
Similar ao endereamento indireto
Operando obtido por referncia de um
apontador mantido em registrador
Maior espao de endereamento (2
N
) que
o modo registrador
Uma referncia de memria a menos que
o modo indireto
IC - UFF
Deslocamento
Operando
End R
Registradores Memria
Instruo
Apontador
COp
IC - UFF
Modo deslocamento
O endereo efetivo obtido como:
EndEf = End + (R)
Os trs modos mais comuns so:
endereamento relativo
endereamento registrador base
endereamento indexado
IC - UFF
Endereamento relativo
H uma referncia implcita ao contador
de programa
EndEf = End + (PC)
Como referncia implcita, no h
campo R campo End pode ser maior
Explora o conceito de localidade de
referncias
IC - UFF
Endereamento registrador base
O registrador contm o endereo base de
memria
O campo End contm um deslocamento
em relao a essa base
Registrador pode ser implcito ou no
uma forma conveniente de
implementar segmentao (e.g., 80x86)
IC - UFF
Endereamento indexado
Similar ao registrador base, contudo,
campo de endereo pode ser maior
O registrador contm o deslocamento
Interessante para acesso a arrays: h
instrues da UCP para incremento de
registradores!
Auto-indexao: incremento em um
nico ciclo de instruo

IC - UFF
Pilha
Instruo
Implcito
Apontador da
pilha
Pilha
Memria
Registrador
IC - UFF
Modo pilha
uma forma de endereamento implcito
As instrues de mquina sempre atuam
no(s) operando(s) do topo da pilha
IC - UFF
Formato das instrues
Definio dos bits na instruo
Formato inclui o cdigo de operao e os
operandos
A alocao dos campos (bits) depender
do nmero de modos de endereamento,
do nmero de operandos, ...
Mltiplos formatos em um nico
conjunto de instrues

Вам также может понравиться