Jumat, 18 November 2011

Jawaban UAS Praktik PBR_13 Nop 2011

Dosen Pengampu : Nahar Mardiyantoro, M.Kom

Coding :

.model small
.code
org 100h
mulai:
   
    jmp proses
    kal db 13,10,'Enter  Password : $'
    kal2 db 10,'WELCOME...!!$'
    kal3 db 10,'NO ACCESS...!!$'
   
proses : mov ah, 09h
    lea dx, kal
    int 21h
   
    mov ah, 07h
    int 21h
   

    cmp al, 'F'
    je pilihan1

    jne proses1
   
   
proses1 : mov ah, 09h
    lea dx, kal3
    int 21h
    int 20h

pilihan1:
    mov ah, 02h
    mov dl, '*'
    int 21h

    mov ah, 07h
    int 21h
    cmp al, 'I'
    je pilihan2

    jne proses

pilihan2:
    mov ah, 02h
    mov dl, '*'
    int 21h

    mov ah, 07h
    int 21h
    cmp al, 'X'
    je pilihan3
       
    jne proses

pilihan3:
    mov ah, 02h
    mov dl, '*'
    int 21h

    mov ah, 09h
    lea dx, kal2
    int 21h

int 20h
end mulai

Jawaban UAS Teori PBR_13 Nop 2011

Dosen Pengampu : Nahar Mardiyantoro, M.Kom
 

1.  Pemahaman atau Analogi No Service dan No Interupsi
No Service yaitu Merupakan nomor layanan pasangan dari nomor interupt sehingga menghasilkan action tertentu. Apabila nomor service diubah dan nomor interupt tetap hasil action berbeda. 

No Service yaitu 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. Nomor interupsi 0 sampai 1Fh disediakan oleh ROM BIOS, yaitu suatu IC didalam komputer yang mengatur operasi dasar komputer. Jadi bila terjadi interupsi dengan nomor 0-1Fh, maka secara default komputer akan beralih menuju ROM BIOS dan melaksanakan program yang terdapat disana. Program yang melayani suatu interupsi dinamakan Interrupt Handler.
Interupt yang berjumlah 256 buah ini dibagi lagi ke dalam 2 macam yaitu:
- Interupt 00h - 1Fh (0 - 31) adalah interrupt BIOS dan standar di semua komputer baik yang menggunakan sistem operasi DOS atau bukan. Lokasi Interupt Vector Table-nya ada di alamat absolut 0000h-007Fh.
- Interupt 20h - FFh (32 - 255) adalah interrupt DOS. Interrupt ini hanya ada pada komputer yang menggunakan sistem operasi DOS dan Interupt Handler-nya diload ke memori oleh DOS pada saat DOS digunakan. Lokasi Interupt Vector Tablenya ada di alamat absolut 07Fh-3FFh.

2.  Dalam menerima input karakter dari keyboard, dapat dilakukan dengan menggunakan beberapa no service. Contoh no service adalah :
02h,01h,07h
02h: bila nilai AH adalah 2 maka komputer akan mencetak sebuah   karakter, berdasarkan kode ASCII yang terdapat pada register DL.
01h: no service ini berfungsi untuk mengInput 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
07h: no service ini berfungsi untuk mengInput 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
08h: no service ini berfungsi untuk mengInput 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.

3.  Untuk melengkapi menampilkan karakter yang diinputkan keyboard adalah sebagai berikut:

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

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

    int 20h
end mulai

4.  Anti Detection routines akan menjadi payung dari search dan copy,menghindari deteksi, baik oleh pengguna komputer maupun software, pendeteksi virus membatasi scope pencarian dan penduplikatan, menjalankan routine pada saat komputer sedang mengalami idle (stand by). Virus akan mencari tempat untuk berproduksi, setelah ketmu virus akan meng-copy dirinya sendiri pada area yang telah ditentukan, pengcopyan dilakukan bila pc dalam keadaan idle/ diam. virus yang menyerang file berekstensi COM umumnya berukuran lebih kecil daripada virus yang menyerang file EXE, karena file EXE memiliki struktur yang lebih kompleks, sehingga virus lebih sukar untuk melekatkan diri pada file EXE.

5.  Pendapat tentang performance pembuatan virus.
Bahasa rakitan memungkinkan programmer untuk mengontrol serta memanfaatkan secara penuh kapabilitas yang terdapat pada perangkat keras, dengan menggunakan bahasa assembly progremer dengan mudah membelokan interupsi sebuah software/hardware sifatnya yang menerjemahkan secara langsung instruksi rakitan menjadi instruksi mesin,hal ini akan dengan mudah merubah pengalamatan sebuah hardware hanya dengan menggunakan bahasa yg simple atau bahasa tingkat rendah.