next up previous contents
Next: Programação do 8086 - Up: Registos Previous: Registo das Flags

Registos de Segmento e Deslocamento

O endereçamento de memória é feito a partir dos registos de segmento e registos de deslocamento (offset).

Como já foi referido, os registos internos do 8086 são todos de 16 bits e, como também já sabemos, com 16 bits conseguimos apenas endereçar 216 bytes, ou seja 64 Kbytes. Para endereçar 1 MByte foi necessário recorrer a uma técnica designada por segmentação e que consiste no seguinte: em vez de um registo, são utilizados dois registos. Um desses registos aponta para um valor de memória chamado base do segmento, enquanto o outro determina o deslocamento em relação a essa base num valor máximo de 64 Kbytes.

Os registos que são a base do segmento são os registos de segmento e os registos que determinam o deslocamento do endereço em relação a essa base chamam-se registos de deslocamento.

Existem 4 registos de segmento, são eles:

Os registos de deslocamento trabalham associados aos registos de segmento.

Um endereço representado a partir de dois valores de registos tem o nome de endereço lógico. O endereço físico ou endereço real é calculado a partir desse endereço lógico, deslocando o valor de base do endereço, 4 bits para a esquerda, e somando ao resultado o valor do deslocamento.

Exercícios:


next up previous contents
Next: Programação do 8086 - Up: Registos Previous: Registo das Flags
Maria Joao Nicolau
1/28/1999