Selasa, 22 April 2008

cekINTERUPT
Program Percabangan
program melompat ke sebuah program lain untuk melaksanakan operasi yang lebih khusus
1.subroutine
Terjadi pada bahasa pada tingkat tinggi
2.Procedure
Terjadi pada bahasa tingkat rendah
3.Trap
pesan kesalahan
4.Inerupt
Permintaan dari hadware, processor akan mengeksekusi berdasarkan tingkat prioritas
5.Exception
Percabangan ada 2 jenis:
1.Percabangan tunggal
2.percabangan berganda (nested branch)
Jenis-jenis interupsi
1.Interupsi internal Mikroprocessor
2.Interupsi Mutlak (Non Maskable interupt)
3.Maskable interupt
4.asdf
Prioritas Pelaksanan Interupsi
1.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
2.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
................. 01.50 3A.52 dst (proses menulis string di memory)
d 200 (untuk melihat string yang dibuat tadi)
a 100
............ mov ah,9
............ mov dx, 200
............ int 21
............ int 20
............
g
PR
program terminated .....

Tidak ada komentar: