la differenza è semplice
nel caso di interruzione asincrona, il tuo processore sta eseguendo le istruzioni di un programma o facendo altre cose e all'improvviso, senza che lui possa prevedere il momento, arriva un'interruzione proveniente da un dispositivo hardware
nel caso delle interruzioni software è il programma e quindi il processore a sollevare l'interruzione tramite l'istruzione INT...quindi è sincrona al flusso del programma e cioè il programma sa benissimo cosa sta per accadere nel momento che manda l'istruzione INT al processore
la differenza sta nella prevedibilità...nel primo caso non sai quando può accadere, nel secondo caso sei tu stesso a farlo accadere e quindi sai benissimo il quando, il come e il perchè dell'interruzione