Pengulangan Pada Bahasa Assembly

Assalamualaykum

Perintah LOOP digunakan untuk melakukan suatu proses yang berulang-ulang sesuai dengan nilai yang telah ditentukan.
        
       LOOP Tujuan

Tujuan dapat berupa suatu label yang telah didefinisikan, contoh:

             MOV CX,3        ; Banyaknya pengulangan yang dilakukan
Ulang :   INT 10h           ; Tempat terjadinya pengulangan

             LOOP Ulang      ; Lompat ke label 'Ulang'


Pada proses perulangan dengan perintah LOOP, registex CX memegang suatu peranan khusus dimana register ini dijadikan sebagai counter/penghitung terhadap banyaknya looping yang boleh terjadi. Setiap ditemui perintah LOOP, maka register CX akan dikurangi dengan 1 terlebih dahulu, kemudian akan dilihat apakah CX sudah mencapai 0. Proses looping akan selesai bila nilai pada register CX mencapai nol. Seperti pada contoh diatas, maka interupsi 10h akan dihasilkan sebanyak 3 kali(sesuai dengan nilai CX).

      Perlu diperhatikan bahwa jangan sampai anda menaruh CX kedalam proses LOOP karena hal ini akan menyebabkan nilai CX di SET terus sehinnga proses looping tidak bisa berhenti.

Mencetak Beberapa Karakter

Berikut adalah kode untuk mencetak beberapa karakter dengan Loop
.MODEL SMALL
.CODE
ORG 100h

Proses :
            MOV AH,02h
            MOV DL,'A'
            MOV CX,10

Ulang  :
            INT 21h
            ADD DL,1
            LOOP Ulang

            INT 20h
END    Proses

Bila program tersebut dijalankan, maka akan menghasilkan sebagai berikut.


Selanjutnya , kita akan mencetak karakter A-Z dengan perulangan disertai dengan warna dan background .

berikut adalah kode program nya
.MODEL SMALL
.CODE
ORG 100h

proses :
        MOV AH,9h
        MOV BL,96h
        MOV CX,26

ulang  :
        INT 10h
        ADD BL,1
        LOOP ulang

        MOV AH,2h
        MOV DL,'A'
        MOV CX,26

dua   :
        INT 21h
        ADD DL,1
        LOOP dua


        INT 20h
END  proses

Simpan dengan ekstensi *.ASM , compile dan tlink, kemudian jalankan file tersebut, jika tidak terjadi kesalahan, maka hasilnya adalah



Sekian tutorial perulangan pada Assembly. Terima kasih


Wassalamualaykum.

Posting Komentar