Interrupt: Forskelle mellem versioner
Content deleted Content added
Glenn (diskussion | bidrag) m sprog |
rod |
||
Linje 1:
{{eftersyn|Artiklen har ingen referencer og et uklart sprog der ikke harmonerer med det fagligt-tekniske tema|dato=november 2021}}
'''Interrupt''' ({{lang-da|afbrydelse}}) er en mekanisme i [[cpu]]-arkitekturen der har som formål
at afbryde den aktive {{illsup|de|opcode}} processering.
'''Interruptet''' signalerer - i metaforisk forstand - at der er indtruffet en hændelse
(''{{illsup|de|Event (programmering)|Ereignis (Programmierung)|event}}'')
der kræver øjeblikkelig håndtering,
og håndteringen implementeres jævnfør en indbygget, dvs. ''hardcoded'',
'interrupthandler', evt. også kaldet
'interrupt service routine'.
Mekanismen agerer på [[Register (cpu)|register]]-niveau og kan i visse (få) tilfælde tilgåes ved [[programmering]] - et softwareinterrupt.
'''Interrupt''' mekanismen skelner - såvidt vides - ikke mellem software-genererede kritiske hændelser og hardware-kritiske hændelser.
== Hardwareinterrupt ==
Line 13 ⟶ 19:
== Softwareinterrupt ==
Et softwareinterrupt udløses af et program. Det sker som en særlig instruktion, for hvilke nok ikke alle programmeringssprog kan bruges, dels er gemt af vejen i kompilerings-processen.
Gængse {{illsup|de|Opcode|Opcode|Opcodes}}
* INT xxh (Interrupt / Intel 8086)
* SC xxh (System Call / Zilog Z8000)
* TRAP xh (Trap / Motorola 68000)
* CALL 0005h (CP/M-80)
Eksempelvis i [[assemblersprog]]
<syntaxhighlight lang="asm" style="border: dashed 1px #2F6FAB; padding: 1em">
int 80h
</syntaxhighlight>
== ''Maskable interrupt'' og ''Non-maskable interrupt'' ==
|