About processor exceptions
A processor exception is an event that interrupts the normal flow of instruction execution.
During the normal flow of execution through a program, the Program Counter (PC) increases sequentially through the address space, with branches to nearby labels or branch with links to subroutines.
Processor exceptions occur when this normal flow of execution is diverted, to enable the processor to handle events generated by internal or external sources. Examples of such events are:
externally generated interrupts
an attempt by the processor to execute an undefined instruction
accessing privileged operating system functions.