Есть два типа прерываний.
Первый тип - это прерывания для сигнализации об аппаратных событиях, например, истек аппаратный таймер или контроллер жесткого диска завершил передачу данных в память.
Второй тип - это прерывания для сигнализации о каком-то непредвиденном состоянии. Вот некоторые примеры: доступ к недопустимой памяти, деление на ноль (на самом деле это «переполнение деления», которое происходит не только при делении на ноль, но даже при делении очень большого значения на очень маленькое значение), инструкция точки останова, аппаратная точка останова и т. д. Этот тип исключений выдается процессором, когда он не может выполнить текущую инструкцию и обычно приводит к прекращению текущего процесса или к отладчику. Они на самом деле не связаны с флагами процессора, которые содержат результаты последней инструкции.