| 
      Sezione | 
      
       
   
    
      Indirizzi Base
    
    
    
      Registri Interni
    
      | 
    
| Schede del Tutorial | 
| La Tabella dei Vettori | 
      SCHEDA n° 04 [ 13 di 15]  | 
   
  | 
| 
     | 
    
  | 
  
  | 
La creazione di una nuova 
  procedura di gestione può aver bisogno dell'indirizzo del 
  vecchio Gestore; per questa ragione 
  diamo per scontato che il programma che lo ospita contenga anche le variabili 
  di deposito definite nella pagina precedente, cioè la
  variabile 
  
  DWORD (DD, 
  32 bit, 4bytes, 
  segment:offset del puntatore) e/o le 2 
  variabili 
  
  WORD (DW, 
  16 bit, 2bytes, parte 
  segment e parte offset del puntatore), 
  chiamate rispettivamente old_INT e 
  old_SEG/old_OFF:
 
  | 
| 
     
  | 
      
Il nuovo Gestore associato al 
  Vettore può:
 
 
 
 
 
 
 
  | |||||||||||||
In ogni caso è sempre opportuno salvare all'inizio 
  il 
contesto con 
   
  PUSH 
  dei registri utilizzati (comprese le 
  flag del processore); supponendo che la 
  nuova procedura di servizio si chiami new_INT, 
  la sua parte iniziale potrebbe essere:
 
  | 
| 
     
  | 
      
| 
     | 
    Se si tratta di un Nuovo Gestore HardWare, dopo aver eseguito le desiderate operazioni di servizio, è assolutamente necessario ricordare che, prima di restituire il controllo, bisogna avvisare il controllore delle interruzioni (8259) che la procedura di servizio è terminata spedendogli il codice 20H di Fine Interruzione. | 
| 
     
  | 
      
L'Integrato 8259 è 
  accessibile attraverso il registro di Comando 
  Interruzioni, di indirizzo 0020H 
  (_8259ct); al termine di ogni procedura di
  servizio di interruzione Hardware è 
  necessario segnalarne la fine spedendogli la parola esadecimale
  20H = EOI =
  End Of Interrupt, con le seguenti 
  istruzioni:
 
 
  | ||||
Naturalmente la procedura dedicata al nuovo gestore 
  terminerà con il recupero del contesto iniziale 
con 
   
  POP dei registri precedentemente salvati, 
  riabilitando le interruzioni 
mascherabili (con 
   
  STI) e ricordandosi di
  restituire il controllo con 
   
  IRET:
 
  | 
  | 
| 
      
       |     
    Scheda n° 04 | 
      
       | 
    La Tabella dei Vettori | 
     | 
    
    
     | 
    
     | 
 ||
| Scheda n° 04 - 13 | 
      
  | 
    
| 
     
  | 
  
        
  | 
    
        
  | 
    
| 
      
         
        Home 
     | 
      
  | 
    |||||||
      
  | 
       
          
        Motore Ricerca  | 
      
  |