INTERUPT
Program Percabangan
program melompat ke sebuah program lain untuk melaksanakan operasi yang lebih khusus
subroutine
Terjadi pada bahasa pada tingkat tinggi
Procedure
Terjadi pada bahasa tingkat rendah
Trap
pesan kesalahan
Inerupt
Permintaan dari hadware, processor akan mengeksekusi berdasarkan tingkat prioritas
Exception
Percabangan ada 2 jenis:
Percabangan tunggal
percabangan berganda (nested branch)
Jenis-jenis interupsi
Interupsi internal Mikroprocessor
Interupsi Mutlak (Non Maskable interupt)
Maskable interupt
asdf
Prioritas Pelaksanan Interupsi
Berdasarkan jenisnya
*) Interupsi internal (ex pembagian dengan nol)
*) mutlak gangguan listrik jenis non maskable (mutlak, tidak bisa diganggu gugat)
*) Software interrupt jenis maskable
*) Hardware interupt jenis maskable
Berdasarkan tingkat penomorannya
Interupsi berdasarkan nomor
0 Pembagian dengan nol
1 Langkah tunggal
3 Breakdown
4 Overvlow
5 Print screen
Interupt nol akan disimpan pada alamat 0000 : 0000 (4 digit di depan : adalah CS dan 4 digit dibelakang adalah IP)
Setiap interupt akan memakai memori 4 byte
1 alamat memory 2 angka heksa = 8 bit = 1 byte
interupt 0 di 0 0000
interupt 1 di 4 4
interupt 2 di 8 8
interupt 3 di 12 C
interupt 4 di 16 10
interupt 5 di 20 14
untuk melihat alamat dari sebuah interupt (4 byte,. 4 alamat memory)
syntaxnya: d 0000:0014 L 4 akan tampil 4 buah alamat
output: B9 06 0A 02 (contoh saja, bisa jadi komputer yang berbeda menghasilkan output yang berbeda juga)
untuk melihat instruksi yang terjadi dalam sebuah interupt
syntax: u 020A:06B9 (membalik, dibaca dari belakang)
untuk menjalankan interupsi mengguanakan G
untuk melakanakan interupt misal di alamat mempry 100
- A 100
........ INT 5
......
-RIP
IP 0100 (untuk memastikan bahwa IPnya 100)
:100
-R
.......................................
........................................
....... INT 05
G batas akhir (contoh G 102)
P (menampilkan satu interupt)
mencetak karakter
a 100]
............. mov ah, 2
............. mov dl, 41
............. int 21
............. int 20
.............
g
A
progress terminated .....
mencetak string
- e 200
d 200 (untuk melihat string yang dibuat tadi)
a 100
............ mov ah,9
............ mov dx, 200
............ int 21
............ int 20
............
g
PR
program terminated .....
................. 01.50 3A.52 dst (proses menulis string di memory)