Assembly Language
割り込み
サーチ…
備考
なぜ割り込みが必要なのですか?
想像してみましょう:私たちのコンピュータはキーパッドに接続されています。我々は何かを入力したい。私たちがキーを押すと、何も起こりません。なぜなら、コンピュータはさまざまなことに取り組んでおり、私たちが何かを求めていることに気付かないからです。我々は割り込みが必要です!
割り込みはソフトウェア( INT 80h)またはハードウェア(keypress)によってトリガされ、 コールのように動作します(特定の場所にジャンプし、コードを実行して再びジャンプします)。
Z80での割り込みの操作:
Z80には最新のプロセッサーのような割り込みテーブルはありません。 Interruptsはすべて同じコードを実行します。割り込みモード1では、特定の変更不可能な場所でコードを実行します。割り込みモード2では、それらはPointerレジスタIからのコードを実行します。 Z80にはタイマがあり、割り込みはすべて〜0.007秒間トリガされます。
EI ;enables Interrupts
DI ;disables Interrupts
IM 1 ;sets the Normal Interrupt Mode
IM 2 ;sets the Advanced Interrupt Mode
LD I,$99;sets the Interrupt Pointer to $99 (just possible in IM 2)
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow