Specifications
MICROPROCESSADORES
ARQUITECTURA DOS MICROCOMPUTADORES
2
Luís Miguel Charrua Figueiredo 2 - 5 E.N.I.D.H.
Compatibilidade entre microprocessadores
Cada novo processador acrescenta inovações tecnológicas em relação ao seu antecessor, mas
não perde compatibilidade com os anteriores, incluindo o 8086.
Modo real, Protegido e Virtual 8086
Modo real
Modo de endereçamento do 8086. Multiplica o valor do registo de segmento por 16, o que é
equivalente a deslocar o valor de 4 bits para a esquerda, e adiciona o valor do registo de
offset. O
resultado é um valor de 20 bits, o que faz com que o espaço físico de endereçamento seja limitado
a 1 Mbyte.
Modo Protegido
Foi originalmente implementado no 80286 para proteger os acessos inválidos e incorrectos às
diferentes tarefas num sistema operativo multitarefa (OS/2, Linux, Windows NT, Windows 2000).
Para conseguir isso, o hardware do processador verifica os acessos aos dados e ao código feito
por um programa e utiliza 4 níveis de privilégios para fornecer direitos de acesso.
O cálculo do endereço de memória no modo protegido também é diferente: o registo de segmento
age como um selector para extrair um endereço de 32 bits da memória e adiciona-o ao
offset de
16 bits. O valor do segmento não é um endereço, mas representa um índice numa tabela de
endereços de segmento. Cada entrada dessa tabela contém um endereço de 24 bits, que - esse
sim - indica o início do segmento da memória. Pode endereçar até 16 Mbytes de espaço físico
(2
24
bytes).
No 80386 o modo foi melhorado ao permitir endereços de segmento e de
offset de 32 bits,
possibilitando endereçar até 4 Mbytes.
Modo virtual 8086
Foi introduzido com o 80386, o endereçamento é igual ao 8086, mas os endereços físicos de
1 Mbyte são mapeados para qualquer zona dos 4 Gbytes disponíveis. Isto permite que um sistema
operativo multitarefa execute vários programas feitos para o 8086, cada um com o seu espaço de
1 Mbyte independente. O modo virtual 8086 surgiu porque na altura do aparecimento do 80386,
ainda havia muitos programas a correr sobre o MS-DOS, que é um sistema operativo em modo
real. O modo virtual 8086 é usado, por exemplo, por uma janela de DOS a correr sobre o Windows.










