Anda di halaman 1dari 3

Bahasa Rakitan By Okti Yudhanti Nur K

INTERRUPT
3.1. PENGERTIAN INTERRUPT Interupsi adalah suatu permintaan khusus kepada mikroposesor untuk melakukan sesuatu. Bila terjadi interupsi, maka komputer akan menghentikan dahulu apa yang sedang dikerjakannya dan melakukan apa yang diminta oleh yang menginterupsi. Pada IBM PC dan kompatibelnya disediakan 256 buah interupsi yang diberi nomor 0 sampai 255. omor interupsi 0 sampai !"h disediakan oleh #$M BI$%, yaitu suatu IC didalam komputer yang mengatur operasi dasar komputer. &adi bila terjadi interupsi dengan nomor 0'!"h, maka se(ara de)ault komputer akan beralih menuju #$M BI$% dan melaksanakan program yang terdapat disana. Program yang melayani suatu interupsi dinamakan Interrupt *andler. 3.2. VEKTOR INTERUPSI %etiap interrupt akan mengeksekusi interrupt handlernya masing' masing berdasarkan nomornya. %edangkan alamat dari masing' masing interupt handler ter(atat di memori dalam bentuk array yang besar elemennya masing' masing + byte. ,eempat byte ini dibagi lagi yaitu 2 byte pertama berisi kode o))set sedangkan 2 byte berikutnya berisi kode segmen dari alamat interupt handler yang bersangkutan. &adi besarnya array itu adalah 256 elemen dengan ukuran elemen masing'masing + byte. -otal keseluruhan memori yang dipakai adalah sebesar !02+ byte .256 / + 0 !02+1 atau ! ,B dan disimpan dalam lokasi memori absolut 0000h sampai 2""h. 3rray sebesar ! ,B ini disebut Interupt 4e(tor -able .-able 4ektor Interupsi1. ilai'nilai yang terkandung pada Interupt 4e(tor -able ini tidak akan sama di satu komputer dengan yang lainnya.

Bahasa Rakitan By Okti Yudhanti Nur K

Interupt yang berjumlah 256 buah ini dibagi lagi ke dalam 2 ma(am yaitu5 ' Interupt 00h ' !"h .0 ' 2!1 adalah interrupt BI$% dan standar di semua komputer baik yang menggunakan sistem operasi 6$% atau bukan. 7okasi Interupt 4e(tor -able'nya ada di alamat absolut 0000h' 008"h. ' Interupt 20h ' ""h .22 ' 2551 adalah interrupt 6$%. Interrupt ini hanya ada pada komputer yang menggunakan sistem operasi 6$% dan Interupt *andler'nya diload ke memori oleh 6$% pada saat 6$% digunakan. 7okasi Interupt 4e(tor -ablenya ada di alamat absolut 08"h' 2""h.
Nomor Interrupt 900h 90!h 902h 902h 0+h 05h 06h 08h 0@h 0Ah 03h 0Bh 0Ch 06h 0<h 0"h Nama Interrupt 6i:ide By ;ero %ingle %tep on MaskableInt. MI1 Break point 3rithmati( $:er)lo? Print %(reen #eser:ed #eser:ed Clo(k -i(k.-imer1 ,eyboard IB$ Channel 3(tion C$M ! .serial !1 C$M 2 .serial 21 "i/ed 6isk 6iskette 7P- ! .Parallel !1 Nomor Interrupt !0h !!h !2h !2h !+h !5h !6h !8h !@h !Ah !3h !Bh !Ch !6h !<h !"h Nama Interrupt 4ideo %er:i(e <=uipment Che(k Memory %i>e 6isk %er:i(e Communi(ation .#%'2221 Cassette %er:i(e ,eyboard %er:i(e Printer %er:i(e #$M Basi( Bootstrap 7oader BI$% time C date Control Break -imer -i(k 4ideo Initiali>ation 6isk Parameters Draphi(s Char

Gambar 3.1. BIOS Interrupt

Bahasa Rakitan By Okti Yudhanti Nur K

Interrupt

ini

telah

dipastikan

kegunaannya

oleh

sistem

untuk

keperluan yang khusus , tidak boleh dirubah oleh pemrogram seperti yang lainnya. 6<4I6< BE ;<#$ 5 &ika terjadi pembagian dengan nol maka proses akan segera dihentikan. %I D7< %-<P 5 Fntuk melaksanakan B mengeksekusi intruksi satu persatu. MI 5 Pelayanan terhadap MI . on Maskable Interrupt1 yaitu interupsi yang tak dapat di(egah. B#<3, P$I - 5 &ika suatu program menyebabkan o:er)lo? )lag menjadi ! maka interrupt ini akan melayani pen(egahannya dan memberi tanda error.

Nomor Interrupt 20h 2!h 22h 22h 2+h 25h 26h 28h

Nama Interrupt -erminate Program 6$% "un(tion %er:i(es -erminate Code Ctrl'Break Code Criti(al <rror *andler 3bsolute 6isk #ead 3bsolute 6isk Grite -erminate But %tay #esident

Gambar 3.2. DOS Interrupt 6idalam pemrograman dengan bahasa assembler kita akan banyak sekali menggunakan interupsi untuk menyelesaikan suatu tugas.