Assembly x86/Modos de operação: diferenças entre revisões
[edição não verificada] | [edição não verificada] |
m cat |
Sem resumo de edição |
||
Linha 1: | Linha 1: | ||
A compatibilidade com versões anteriores de software tem sido desde o princípio a principal fonte de decisões de design da arquitectura x86. Quando a Intel desenhou o 8086, utilizou nele um modelo de memória que permitia que os programas desenvolvidos para microprocessadores anteriores |
A compatibilidade com versões anteriores de software tem sido desde o princípio a principal fonte de decisões de design da arquitectura x86. Quando a Intel desenhou o 8086, utilizou nele um modelo de memória que permitia que os programas desenvolvidos para microprocessadores anteriores da Intel pudessem ser facilmente adaptados para correr na nova arquitectura. |
||
Posteriormente à introdução do 8086, as alterções de fundo à arquitectura têm sido isoladas por meio de modos de operação distintos. Define-se modo de operação como os elementos do estado interno do processador que afectam o comportamento da execução da totalidade ou parte das instruções. Esse estado interno é atingido por execução de uma sequência de instruções. |
|||
Seja ''C'' o comportamento do processador após a operação de Reset, ou seja, quando o processador acabou de se inicializar. Neste caso, ''C'' representa o comportamento do processador ''8086''. ''F1'' e ''F2'' são modos de operação, e ''f1'' e ''f2'' as sequências de instruções que é necessário executar para que o processador atinja os estados ''F1'' e ''F2'', respectivamente. Representemos por <math>M(C, F)</math> o comportamento resultante de aplicar o modo de operação ''F'' ao comportamento ''C''. ''P1'' é um programa que é a composição de <math>f1</math> com um programa que assume <math>M(C, F1)</math>, e ''P2'' um programa que é a composição de <math>f2</math> com um programa que assume <math>M(C, F2)</math>. |
|||
* Se o processador suporta o modo de operação ''F1'' mas não o modo ''F2'', a execução de ''P2'' vai falhar porque o processador não vai reconhecer ''f2''. No entanto, a execução de ''P1'' vai ser bem sucedida, uma vez que ''f1'' é reconhecida pelo processador. |
|||
* Se o processador suporta os modos de operação ''F1'' e ''F2'', a execução de ''P1'' vai ser bem sucedida, uma vez que ''f1'' vai ser reconhecida. Por sua vez, o suporte ao modo ''F2'' é silenciosamente ignorado, já que o programa ''P1'' ignora a sua existência. Em contrapartida, uma vez que a sequência ''f2'' não é executada, as modificações patentes em ''F2'' não afectam a execução de ''P2''. |
|||
A arquitectura x86 define 5 modos de operação oficiais. |
|||
== Modo Real == |
|||
== Modo Protegido == |
|||
=== Modo de 8086 Virtual === |
|||
== Modo Longo == |
|||
=== Modo de Compatibilidade === |
|||
=== Modo de 64-bits === |
|||
Revisão das 00h40min de 20 de dezembro de 2007
A compatibilidade com versões anteriores de software tem sido desde o princípio a principal fonte de decisões de design da arquitectura x86. Quando a Intel desenhou o 8086, utilizou nele um modelo de memória que permitia que os programas desenvolvidos para microprocessadores anteriores da Intel pudessem ser facilmente adaptados para correr na nova arquitectura.
Posteriormente à introdução do 8086, as alterções de fundo à arquitectura têm sido isoladas por meio de modos de operação distintos. Define-se modo de operação como os elementos do estado interno do processador que afectam o comportamento da execução da totalidade ou parte das instruções. Esse estado interno é atingido por execução de uma sequência de instruções.
Seja C o comportamento do processador após a operação de Reset, ou seja, quando o processador acabou de se inicializar. Neste caso, C representa o comportamento do processador 8086. F1 e F2 são modos de operação, e f1 e f2 as sequências de instruções que é necessário executar para que o processador atinja os estados F1 e F2, respectivamente. Representemos por o comportamento resultante de aplicar o modo de operação F ao comportamento C. P1 é um programa que é a composição de com um programa que assume , e P2 um programa que é a composição de com um programa que assume .
- Se o processador suporta o modo de operação F1 mas não o modo F2, a execução de P2 vai falhar porque o processador não vai reconhecer f2. No entanto, a execução de P1 vai ser bem sucedida, uma vez que f1 é reconhecida pelo processador.
- Se o processador suporta os modos de operação F1 e F2, a execução de P1 vai ser bem sucedida, uma vez que f1 vai ser reconhecida. Por sua vez, o suporte ao modo F2 é silenciosamente ignorado, já que o programa P1 ignora a sua existência. Em contrapartida, uma vez que a sequência f2 não é executada, as modificações patentes em F2 não afectam a execução de P2.
A arquitectura x86 define 5 modos de operação oficiais.