ARTIKEL LAIN
1
komentar
PEMPROGRAMAN
ASSEMBLY MENGGUNAKAN “EMULATOR 8086”
1. BAHASA
ASSEMBLY
Ada banyak istilah yang digunakan dalam
pemprograman assembly antara lain :
MODEL
SMALL ;memberitahu assembler berapa memori yang akan dipakai
.CODE ; Mendeklarasikan bahwa bagian dibawah ini adalah instruksi program
ORG 100h ;Mengatur awal dari program
TData : JMP Proses
T_ASCII DB 13,10,Ini adalah tombol ASCII : $
T_Extended DB 13,10,Ini adalah tombol Extended $
Proses : ;Deklarasi Proses
MOV AH,0 ; Servis Input satu karakter dan memasukan nilai 0 ke AH
INT 16h ; Menjalankan
PUSH AX ; Menyimpan hasil dari pembacaan pada stack
CMP AL,00 ; Percabangan apakah ini karakter extended ?
JE Extended ; Jika Betul !, Lompat ke Extended
ASCII: ;Deklarasi ASCII
LEA DX,T_ASCII ; Mengambil alamat T_ASCII
MOV AH,09 ; Memasukan nilai 09 ke AH
INT 21h ; Cetak kalimat !
POP AX ; Mengambil kembali nilai AX pada stack
MOV DL,AL ; Mengambil kode ASCII yang ditekan, Menduplikasikan isi register AL ke DL
MOV AH,2 ; Memasukan Nilai 2 ke AH
INT 21h ; Cetak karakter !
CMP AL,Q ; Apakah yang ditekan huruf Q ?
JE exit ; Jika Betul !, lompat ke Exit
CMP AL,q ; Apakah yang ditekan huruf q ?
JE exit ; Jika betul !, lompat ke Exit
JMP Proses ; Lompat ke Proses
Extended: ;Deklarasi Extended
LEA DX,T_Extended ; Mengambil alamat T_Extended
MOV AH,09 ; Memasukan nilai 09 ke AH
INT 21h ; Cetak dan menampilkan kalimat !
JMP Proses ; Lompat ke Proses
exit: INT 20h ; Pengembalian Nilai ke DOS !
END TData ; Program Selesai !
.CODE ; Mendeklarasikan bahwa bagian dibawah ini adalah instruksi program
ORG 100h ;Mengatur awal dari program
TData : JMP Proses
T_ASCII DB 13,10,Ini adalah tombol ASCII : $
T_Extended DB 13,10,Ini adalah tombol Extended $
Proses : ;Deklarasi Proses
MOV AH,0 ; Servis Input satu karakter dan memasukan nilai 0 ke AH
INT 16h ; Menjalankan
PUSH AX ; Menyimpan hasil dari pembacaan pada stack
CMP AL,00 ; Percabangan apakah ini karakter extended ?
JE Extended ; Jika Betul !, Lompat ke Extended
ASCII: ;Deklarasi ASCII
LEA DX,T_ASCII ; Mengambil alamat T_ASCII
MOV AH,09 ; Memasukan nilai 09 ke AH
INT 21h ; Cetak kalimat !
POP AX ; Mengambil kembali nilai AX pada stack
MOV DL,AL ; Mengambil kode ASCII yang ditekan, Menduplikasikan isi register AL ke DL
MOV AH,2 ; Memasukan Nilai 2 ke AH
INT 21h ; Cetak karakter !
CMP AL,Q ; Apakah yang ditekan huruf Q ?
JE exit ; Jika Betul !, lompat ke Exit
CMP AL,q ; Apakah yang ditekan huruf q ?
JE exit ; Jika betul !, lompat ke Exit
JMP Proses ; Lompat ke Proses
Extended: ;Deklarasi Extended
LEA DX,T_Extended ; Mengambil alamat T_Extended
MOV AH,09 ; Memasukan nilai 09 ke AH
INT 21h ; Cetak dan menampilkan kalimat !
JMP Proses ; Lompat ke Proses
exit: INT 20h ; Pengembalian Nilai ke DOS !
END TData ; Program Selesai !
2. EMULATOR
8086
Emu8086 merupakan aplikasi emulator
bagi pemrograman bahasa assembler atau mikrokontroler. Dengan menggunakan
aplikasi emulator, kita dapat mensimulasikan apakah program kontrol hardware
yang kita buat sudah benar atau masih salah.
1.
Emulate : untuk menjalankan emulator
kode program yang kita buat
2.
Compile : untuk membuat (compile)
“binary executable file” atau ekstensi “.com” atau “.exe” dari kode program.
3.
Run : menjalankan aplikasi dari
emulator yang dihasilkan (execute).
4.
Single Step : Menjalankan aplikasi
dengan cara tracing (diproses perbaris kode program).
Memulai pemrograman bahasa Assembler terdiri dari
beberapa kode operasi code (op code) dan pseudo ops. Bentuk instruksinya adalah
op code diikuti operand. Opcode adalah perintah yang akan dilaksanakan,
sedangkan operand dpaat terdiri dari sumber (source) dan tujuan (destination).
Berikut
ini langkah-langkah installasi emu8086 :
Penginstalan emulator 8086
Double
klik atau klik kanan open
emulator setup.exe maka hasilnya akn seperti dibawah ini
Selanjutnya klik next seperti dibawah
ini
Klik
next
Klik next>>next
Klik install, dan finish
3.
PENGGUNAAN SOFTWARE “EMULATOR 8086”
Klik start>>program>>emu8086, hasilnya seperti dibawah ini
Kemudian pilih new>>ok
Contoh program seder hana membuat password, list programnya sebagai
berikut :
org 100h
jmp mulai
exit:
mulai:
mov dx,offset msg
mov ah,9
int 21h
mov ah,1
int 21h
mov bl,al
mov ah,1
int 21h
mov cl,al
mov ah,1
int 21h
mov dl,al
mov ah,1
int 21h
cmp bl,6ch
je sukses
jmp salah:
cmp cl,6fh
je sukses
jmp salah
cmp dl,76h
je sukses
jmp salah
cmp al,65h
je sukses
jmp salah
salah:
mov dx,offset msg5
mov ah,9
int 21h
mov dx,offset msg6
mov ah,9
int 21h
jmp exit
sukses:
mov dx,offset msg2
mov ah,9
int 21h
mov dx,offset msg3
mov ah,9
int 21h
mov dx,offset msg4
mov ah,9
int 21h
ret
msg db 0dh,0ah, " Silahkan masukkan
password:",0dh,0ah,"$"
msg2 db 0dh,0ah, "========>>>>Keyword
Success<<<<======== $"
msg3 db 0dh,0ah,
"========>>>>Password Sukses<<<<======== $"
msg4 db 0dh,0ah,
"===========>>>>Complete<<<<============
$"
msg5 db 0dh,0ah,
"==============Password Salah============= $"
msg6 db 0dh,0ah,
"==============Silahkan coba lagi============= $"
lalu klik emulate sehingga hasilnya seperti ini
Lalu klik run,
Lalu ketikkan passwordnya, jika tidak benar maka outputnya adalah msg5 dan
msg6 dan jika password benar maka yang kan tampil perintah msg2,msg3 dan msg4
1 komentar:
program ke 3 itu pasword yang benar apa gan
Posting Komentar