Interrupções Do Microprocessador 8086 Flashcards
Aprender sobre as interrupções do microprocessador 8086
O que é uma interrupção?
É um sinal enviado ao processador a requerer a sua atenção.
Quais são os tipos de interrupções que existem?
Internas ou por software
Externas ou por Hardware
As interrupções podem ser geradas por…
CPU:
Exceções que surgem no desenrolar de
um programa. Por exemplo: “overflow” aritmético ou erro de divisão
programa:
Existência de Instruções de Interrupção num programa.
Em ambos os tipos de interrupções geradas pela CPU e por programa executa-se…
a ISR(Rotina de Serviço de Interrupção) correspondente ao pedido de interrupção, que foi feito no programa interrompido.
No ISR existem dois mecanismos. Quais?
Mecanismo de Acesso
Mecanismo de Localização
ISR - Mecanismo de Acesso
dados importantes
Utiliza o segmento de Pilha (SS), de modo a guardar os seguintes conteúdos antes do programa ser interrompido:
ISR - Mecanismo de Acesso:
| IP |
| CS |
| Registo de Flags |
No final da ISR, utiliza-se uma instrução IRET que desempilha os conteúdos que estão no Segmento de Pilha para que se retorne ao
programa interrompido.
ISR - Mecanismo de Localização
dados importantes
O mecanismo de localização passa pela utilização de uma tabela designada Tabela de Vetores de Interrupção (TVI) com ponteiros para as diversas ISR.
Esta tabela deve ser programada com ponteiros adequados para cada uma das ISR a que se pretende aceder.
Cada ISR tem um ponteiro numa posição fixa na TVI, constituída por 4 Bytes onde vão ser armazenados os (CS) e (IP) da ISR.
Tabela de Vetores de Interrupção (TVI)
dados importantes
A TVI possui no máximo 256 vetores pelo que ocupará 1kBytes, a partir do endereço físico 00000H.
A cada Vetor de Interrupção corresponde um endereço físico na TVI que se obtém fazendo nx4.