Contoh-contoh Bahasa Rakitan

Halo Sobat dumay salam hangat selalu dari teknofolexa ^_^

Sebelum kita membahas materi nya, postingan sebelum nya mengenai Pengertian dan Kegunaan Bahasa Rakitan ada di blog teknofolexa.wordpress jika sobat mau melihat ^_^

Oke Postingan kali ini teknofolexa akan membahasa Apa saja sii Contoh-contoh dalam Bahasa Rakitan ituu versi teknofolexa, yukk langsung saja kita bahas……

  • Mencetak Huruf A

Untuk membuat program menggunakan bahasa rakitan, anda bisa menggunakan editor apapun.  Ketikkan script berikut dengan Notepad++ dan simpan dengan nama a.asm :

; program mencetak huruf A kelayar

; by code_abu_syafa@yahoo.com

.model small

.code

org 100h

mulai: mov ah,02

mov dl,65

int 21h

int 20h

end mulai

Kemudian simpan program anda, dan keluar dari program editor.

Keterangan program

;(tanda titik koma)

Merupakan baris keterangan program. Artinya setelah tanda ; program akan mengabaikan perintah apapun yang ada.

.model small

Digunakan untuk menentukan mode dari program anda, seperti tiny, small dan lain sebagainya.

.code
org 100h

Menentukan alamat offset dari program yang akan digunakan. Untuk program com selalu diawali dari offset 100h.

mulai:

Adalah nama label. Pada pemrograman assembly anda harus mengawali program anda dengan sebuah label. Label ini juga digunakan untuk lompatan program dengan perintah jmp (jump).

mov ah,02

Mengisi register ah dengan servis 2, identik dengan ah:=2 dalam bahasa pascal. Artinya kita menyuruh program nantinya untuk mencetak sebuah karakter yang ada pada register dl. Dengan kata lain perintah mov ah,02 adalah servis untuk mencetak sebuah karakter. Angka 2 disini adalah 2 heksadesimal, sehingga biasa ditulis 02h.

mov dl,65

Mengisi register dl dengan karakter ascii 65 atau ‘A’. Jadi perintah diatas bisa diubah atau sama artinya dengan perintah mov dl,’A’.

int 21h

Menjalankan interupsi nomor 21. Interupsi ini akan mengerjakan sesuai dengan nilai servis yang diisikan. Karena ada perintah mov ah,2 maka progam akan mencetak karakter yang ada pada register dl.

int 20h

Menjalankan interupsi 20. Interupsi ini berfungsi untuk mengembalikan kontrol ke DOS, dengan kata lain interupsi ini digunakan untuk menghentikan jalannya program.

end mulai

Akhir dari progam. Untuk mengakhiri program anda harus mengetikkan perintah end diikuti oleh nama label yang pertama kali digunakan.

Untuk menjalankannya ketikkan perintah:

> tasm a.asm

>tlink/t a

>a

 

  • Menampilkan karakter beratribut M-A dengan foreground merah background hitam :

.model small
.code
org 100h
mulai:
mov ah,09h
mov bl,00000100b
mov cx,13
lagi:
int 10h
inc bl

mov ah,02h
mov dl,’M’
mov cx,13
ulang:
inc bl
int 21h
dec dl
loop ulang
int 20h
end mulai

hasil dari coding di atas adalah seperti gambar dibawah ini :

 

Mov ah,09 h berfungsi untuk perintah memasukan , dengan alamat 00000100b akan dimasukan ke bl karakter sebanyak 13 dengan warna merah  mov bl,00000100b berfungsi merubah huruf menjadi berwarna merah sedangkan mov cx,13 berfungsi untuk melakukan looping dalam hal ini huruf yang diminta adalah M-A atau A-M = 13 huruf.
Mov ah, 02h merupakan perintah untuk mengcopy atau pindahkan sedangkan mov dl merupakan perintah yang harus berisi bilangan hexa dari karakter ascii yang akan dicetak sehingga digunakan mov dl,’M’.

inc bl berfungsi menambahkan satu karakter sedangkan dec dl mengurangi satu karakter loop ulang maka akan dilakukan perintah looping atau ulangi sebanyak satu karakter dari A sampai M karena dibelakukan decrement atau pengurangan maka akan ditampilkan (int 21h) huruf tercetak dari belakang M-A.
Dengan flowchart :

 

  • Menampilkan kalimat jika menemukan huruf tertentu maka pencetakan selesai dengan flowchart berikut dan diimplementasikan dalam coding maka :

 

.model small
.code
org 100h
mulai :
jmp ulang
vkal db ‘UTS PBR STMIK WUP$’
ulang :
mov dl, vkal[bx]
mov ah, 02h
int 21h
inc bx
mov ax, bx
cmp ax,10
je exit
jmp ulang

exit : int 20h

end mulai

 

jmp ulang merupakan perintah lompat, mov dl,vkal [bx] maka dengan alamat vkal[bx] akan dimasukan ke dl. mov ah 02h berpasangan dengan perintah int 21h merupakan perintah untuk menampilkan . inc bx  artinya mengurangi 1 karakter yang ada didalam bx mov ax secara khusus register AX digunakan pada operasi aritmatika dalam operasi pembagian dan pengurangan sedangkan bx biasanya digunakan untuk menunjukan suatu alamat offset dari suatu segmen. cmp ax,10 adalah peerintah membandingkan (compare) dengan 10 karakter yang diminta yaitu jika bertemu dengan huruf M maka berhenti mencetak. jika benar maka keluar (je exit) jika masih belum menemukan lompat / looping ke ulang ( jmp ulang ) exit / keluar dan cetak (int 20h). Hasil dari perintah diatas adalah bila kita tuliskan “UTS PBR STMIK WUP” maka ketika bertemu dengan huruf M perintah cetak terhenti sehingga yang tercetak adalah “UTS PBR ST” seperti gambar berikut :

Sekian Postingan mengenai Contoh-contoh dalam Bahasa Rakitan
DAFTAR PUSTAKA :
Iklan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s