Home       Pesquisar       Contacto       Guestbook       Links Úteis       Webmaster

 
 
 

English version

 
 

 

 

 

 

Aumentar o tamanho do texto   Diminuir o tamanho do texto
hardware

 

Sistemas Operativos

Funcionamento em modo real

Segmentação

Um endereço, representado por 2 ou mais valores de registo, é um endereço lógico.

O endereço físico / real, é calculado a partir do endereço lógico, (de 2 registos de 16 bits).

Para calcular o endereço físico, soma-se o valor do registo de offset com o segmento seleccionado, juntando em ordem de menor peso 4 linhas de zeros. Assim o endereço físico é calculado, deslocando o valor do segmento de base, 4 bits para a esquerda, 1 dígito na base 16, somando-lhe o valor de registo do offset .

Quando a localização física da memória é 02100h, os endereços lógicos podem ser: 0200h e 0100h.

 

0200h é o valor do CS

 

Bit 15

Hexadecimal

Bit 0

0

2

0

0

 

 

 

 

Binário BCD

 

0

0

0

0

0

0

1

0

0

0

0

0

0

0

0

0

 

0100h é o valor do IP

 

Bit 15

Hexadecimal

Bit 0

0

1

0

0

 

 

 

 

Binário BCD

 

0

0

0

0

0

0

0

1

0

0

0

0

0

0

0

0

 

 

 

 

 

4 bits forçados a zero

CS

0000

0010

0000

0000

0000

 

 

 

 

 

 

IP

+

0000

0001

0000

0000

 

 

 

 

 

 

 

 

 

 

 

 

Bin.

0000

0010

0001

0000

0000

 

 

 

 

 

 

Hexa.

0

2

1

0

0

 

Quando a localização física da memória é 00256h, os endereços lógicos podem ser: 0020h e 0056h.

CS = 0020h   ( registo de segmento )

IP = 0056h     ( registo do offset )

 

CS

0

0

2

0

0

0

0

0

IP

 

 

 

 

 

IP

+

0

0

5

6

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

2

5

6

 

 

 
 


© 2007 - 2010 - Miguel Moreira | Todos os direitos reservados