Quando um dispositivo periférico, que está conectado a um microprocessador, utilizar o sinal de interrupção mascarável para solicitar serviços, a sequência de eventos será:
Passo a passo da Interrupção Mascarável no Microprocessador Intel 8086 / 8088
- O pino de interrupção é ativado pelo dispositivo
- ACK é enviado, pelo microprocessador, até o dispositivo periférico
- O topo da pilha passa a ter o IP (Instruction Pointer) e CS (Code Segment) do programa interrompido (para que sua execução volte a ser realizada após a interrupção)
- Em seguida o microprocessador envia o segundo ACK
- O dispositivo tem que informar ao microprocessador o tipo de interrupção que deseja
- O microprocessador, ao saber o tipo de interrupção, acessa a tabela de vetores de interrupção (basta multiplicar o número da interrupção por 4)
- Após serem lidos da tabela de vetores de interrupção do programa do dispositivo, eles são carregados nos registros IP e CS
- Feito isso, finalmente o programa do dispositivo é executado
- Instrução IRET é executada
- Interrupção terminada, os 4 bytes dos registros IP e CS do programa que foi originalmente interrompido são colocados de volta nos registros IP e CS
- O programa que estava sendo executado antes da interrupção volta a ser executado pelo microprocessador
Nenhum comentário:
Postar um comentário