Eine Ausnahme ist eine ungewöhnliche Bedingung, die eine Abweichung vom normalen Programmablauf erfordert. Normalerweise sollte eine Ausnahme nicht zu einem Totalausfall führen, sondern von einem Ausnahmebehandler behandelt werden. Die Ausnahmebehandlung ist ein in vielen Programmiersprachen integriertes Konstrukt. Normalerweise werden Ausnahmen behandelt, indem der Stapel abgewickelt wird, wodurch ein definierter Zustand außerhalb des Bereichs der Ausnahme erreicht wird und anschließend ein Handlerblock oder eine Routine aufgerufen wird.