Kamis, 17 November 2011

UAS SEMESTER III BAHASA RAKITAN

KHUSNUL YAQIN 201017

PRAKTECK:
.model small
 .code
 org 100h

 Mulai:
 jmp proses
 kal db 13,10,'MASUKAN PASSWORD : $'
 kal2 db 10,'WELCOME....$'
 kal3 db 10,'NO ACCESS...$'

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

 proses :
 mov ah, 09h
 lea dx, kal
 int 21h
 mov ah, 07h
 int 21h
 cmp al, 'F'
 je pilihan1
 jne proses1
 int 20h

 pilihan1:
 mov ah, 02h
 mov dl, 'X'
 int 21h
 mov ah, 07h
 int 21h
 cmp al, 'I'
 je pilihan2
 jne proses1

 pilihan2:
 mov ah, 02h
 mov dl, 'X'
 int 21h
 mov ah, 07h
 int 21h
 cmp al, 'X'
 je pilihan3
 jne proses1

 pilihan3:
 mov ah, 02h
 mov dl, 'X'
 int 21h
 mov ah, 07h
 int 21h

 je pilihan4
 jne proses1

 pilihan4:
 mov ah, 02h
 mov dl, 'X'
 int 21h
 mov ah, 09h
 lea dx, kal2
 int 21h

 int 20h
 end Mulai

 


TEORI :

1.    No Interupsi
Interrupt adalah suatu permintaan khusus kepada mikroposesor untuk melakukan suatuperintah. Ketika terjadi permintaan interupsi, microprocessor akan mengeksekusiinterrupt handler ,yaitu suatu program yang melayani interupsi. Setiap interrupthandler itu memiliki alamat masing - masing yang disimpan dalam bentuk array yangmasing - masing terdiri dari 4 byte (2 offset dan 2 segment). Array ini disebut vektorinterupsi . Vektor interupsi ini disusun berdasarkan nomor interupsi yaitu dari hexa.Selain itu, dikenal juga istilah service dan subservice, maksudnya adalah bahwa setiapinterrupt itu dibagi menjadi beberapa bagian yang mempunyai tugas masing - masing.Tetapi ada juga interrupt yang tidak memiliki service, 

No Service
Pada DOS (Disk Operating System) untuk mengerjakan beberapa intruksi maka digunakan pasangan, sedangkan DOS memiliki banyak fungction service sehingga dibutuhkan No servis untuk menampilkan perintah No service merupakan nomor layanan pasangan dari nomor interupsi sehingga menghasilkan action tertentu. Apabila salah satu pasangan diubah atau tidak sesuai atau bukan pasangannya  antara interupsi dan no service maka hasil action akan berbeda bahkan mungkin terjadi eror.

2.    Beberapa No Service
Int 10h dengan service 1300h mencetak kalimat dengan atribut
Int 16h dengan service 00h Input 1 Character Keyboard
Int 16h dengan service 0Ah Input Kalimat dari Keyboard
int 21h dengan service  ah 01h Input 1 Karakter (Keyboard Input)
int 21h, dengan service ah 03h Auxiliary Input (Standard Auxiliary Device Input)
Int 21 h, dengan service ah 07h input 1 Karakter Tanpa Echo Tidak Mengecek Ctrl-C (Direct Console Input Without Echo)
int 21h dengan service 09h untuk mencetak kalimat
Int 21h dengan service 02h untuk mencetak karakter
3.    melengkapi potongan program
.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.