Quel codice non ha senso.
L'indirizzo a cui punta una INT è fatto da 2 byte per il segmento più 2 per l'offset per un totale di 4 byte (si memorizza prima l'offset e dopo il segmento). Quindi, ad esempio per l'INT 80h sta nelle locazioni
80h*4 e 80h*4+1 per l'offset
80h*4+2 e 80h*4+3 per il segmento
P.S. tutta roba che si dovrebbe sapere prima di iniziare a scrivere questi codici. In realtà il tuo non un problema di programmazione per codice da correggere ma un problema relativo al dominio del problema che tu non hai affatto chiaro. E il forum non ti può fare da tutorial per scrivere un kernel