L'Intel 8259 è un interrupt controller in grado di gestire fino a 8 periferiche. L'Intel 8259 supporta anche la gestione delle priorità associate alle periferiche.
Il processore può leggere e scrivere dati su 8 bit nei registri dell'Intel 8259 tramite il bus:
i segnali di read e write specificano il tipo di operazione (lettura o scrittura);
il segnale A0 specifica su quale registro operare.
L'Intel 8259 contiene principalmente 3 registri:
l'Interrupt Mask Register (IMR) permette il mascheramento selettivo delle periferiche;
l'Interrupt Request Register (IRR) riceve i segnali di richieste di interruzione dalle periferiche;
l'Interrupt Service Register (ISR) tiene traccia delle periferiche la cui procedura di servizio è ancora in corso: il processore tramite l'ISR può far sapere all'Intel 8259 quando inizia e quando finisce la procedura di servizio di una periferica, così se nel frattempo una periferica a priorità inferiore fa richiesta l'Intel 8259 attiva il segnale di INT per la nuova periferica solo dopo che il processore ha terminato di servire la periferica a priorità maggiore.