Wednesday, November 16, 2011

UAS TEORI (Assembly language)

1. - Pengertian Interrupt

  • Interupsi adalah suatu permintaan khusus pada mikroprocessor untuk melakukan sesuatu, jika terjadi  interupsi maka komputer akan menghentikan dahulu apa yang sedang dikerjakan dan melakukan apa yang diminta oleh yang menginterupsi.
  • Interrupt merupakan sub rutin yang sudah tersedia dalam memori komputer
  • Pada IBM PC dan kompatibelnya disediakan 256 buah interupsi yang diberi nomor 0 s/d 255.
  • Nomor interupsi 0 s/d 1Fh disediakan oleh ROM BIOS yaitu suatu IC di dalam komputer yang mengatur operasi dasar komputer.
  • Jadi jika terjadi interupsi dengan nomor 0 s/d 1Fh maka secara default komputer akan beralih ke ROM BIOS dan melaksanakan program yang terdapat disana.
  • Program yg melayani suatu interupsi dinamakan Interrupt Handler
   - Pengertian NO Service
  • Merupakan nomor layanan pasangan dari nomor interupt sehingga menghasilkan action tertentu. Apabila nomor service diubah dan nomor interupt tetap hasil action berbeda.
2. Interrupt 21h Service 01h
    NO. INTERRUPT    = 21h
    NO. SERVICE        = 01h
    FUNCTION        = Input 1 Karakter (Keyboard Input)
  • Mengambil Input Dari Keyboard (Standard Input Device), lalu menampilkan karakter ke layar (Standard Output Device) dan menyimpan karakter tersebut di AL. Penekanan tombol Ctrl-Break akan dicek. Jika tombol tersebut ditekan, interupt 23h akan dieksekusi. 
    INPUT     :                                
        AH    = 01H                    
    OUTPUT     :    
        AL    = Kode ASCII Hasil Input Tercetak di layar

    Interrupt 21h Service 07h
    NO. INTERRUPT    = 21h
    NO. SERVICE        = 07h
  • FUNCTION        = Input 1 Karakter Tanpa Echo Tidak Mengecek Ctrl-C (Direct Console Input Without Echo). Menunggu hingga sebuah karakter diketikkan dari standard input device dan menyimpannya ke register AL. Service ini sangat mirip dengan service 01h, hanya saja pada service ini karakter tak ditampilkan ke layar. Service ini tidak mengecek Ctrl-C atau Ctrl-Break. Service ini sering dipakai untuk pemasukan password karena tak menampilkan karakter yang diketikkan.
    INPUT     :                                
        AH    = 07H                        
    OUTPUT     :    
        AL    = Kode ASCII Yang Ditekan
    Interrupt 21h Service 08h
    NO. INTERRUPT    = 21h
    NO. SERVICE        = 08h
  • FUNCTION        = Input 1 Karakter Tanpa Echo Mengecek Ctrl-C (Console Input Without Echo With ^C). Menunggu hingga sebuah karakter diketikkan dari standard input device dan menyimpannya ke AL. Service ini juga tidak menampilkan karakter yang diketikkan ke layar monitor tapi mencek Ctrl-C atau Ctrl-Break. Jika tombol tersebut ditekan, INT 23h akan dieksekusi.
    INPUT     :                                
        AH    = 08H                        
    OUTPUT     :    
        AL    = Kode ASCII Yang Ditekan
3. Kode menampilkan karakter yang diinputkan keyboard:

    .model small
    .code
    org 100h
    mulai:
        mov ah, 07h
        int 21h

        mov ah, 02h
        mov dl, al
        int 21h

        int 20h
    end mulai
4. Membatasi scoupe pencarian dan penduplikatan, menjalankan routine pada saat komputer sedang mengalami idle (stand by)
5. Performance pembuatan virus dengan Assembly dibandingkan dengan bahasa tingkat tinggi yaitu :
  • Bahasa rakitan memungkinkan programmer untuk mengontrol serta memanfaatkan secara penuh kapabilitas yang terdapat atas suatu perangkat keras, berbeda halnya dengan bahasa pemrograman tingkat tinggi yang memiliki banyak keterbatasan dalam pemanfaatan secara penuh suatu perangkat keras. Bahasa rakitan menjanjikan tingkat unjuk kerja yang maksimum karena sifatnya yang menerjemahkan secara langsung instruksi rakitan menjadi instruksi mesin, berbeda halnya dengan bahasa pemrograman tingkat tinggi yang biasanya menerjemahkan sebuah instruksi menjadi sejumlah kode mesin.

No comments:

Post a Comment