Difference between revisions of "Exception"
From Computer History Wiki
(mention hardware exceptions cause traps) |
m (raise hardware czse up) |
||
Line 1: | Line 1: | ||
An '''exception''' (more often '''condition''') refers to facilities in some [[programming language]]s and [[operating system]]s to indicate the occurrence of some sort of error or un-expected event - e.g. 'divide by zero' or 'unexpected end-of-file'. | An '''exception''' (more often '''condition''') refers to facilities in some [[programming language]]s and [[operating system]]s to indicate the occurrence of some sort of error or un-expected event - e.g. 'divide by zero' or 'unexpected end-of-file'. | ||
+ | |||
+ | The term 'exception' is also often used for hardware-detected issues (e.g. in the [[Motorola 68000 Family]]), where a [[trap]] is the usual result; the term 'condition' is usually more general, and covers software-detected and generated issues. Software is said to '''raise''' or '''signal''' a condition. | ||
When such an event happens, program execution is diverted to an [[condition handler]] for that specific condition, which is expected to deal with that condition. | When such an event happens, program execution is diverted to an [[condition handler]] for that specific condition, which is expected to deal with that condition. | ||
− | |||
− | |||
{{semi-stub}} | {{semi-stub}} | ||
[[Category: Software Concepts]] | [[Category: Software Concepts]] |
Latest revision as of 17:44, 1 July 2020
An exception (more often condition) refers to facilities in some programming languages and operating systems to indicate the occurrence of some sort of error or un-expected event - e.g. 'divide by zero' or 'unexpected end-of-file'.
The term 'exception' is also often used for hardware-detected issues (e.g. in the Motorola 68000 Family), where a trap is the usual result; the term 'condition' is usually more general, and covers software-detected and generated issues. Software is said to raise or signal a condition.
When such an event happens, program execution is diverted to an condition handler for that specific condition, which is expected to deal with that condition.