Pages

Minggu, 11 November 2012


BAHASA ASSEMBLY #5

Pada pembahasan kali ini, akan membahas tentang aritmatika di computer khususnya Pemrograman Bahasa Rakitan.
Berikut merupakan operator Aritmatika :

11.      Operasi Penambahan
Dalam bahasa rakitan penambahan bias menggunakan perintah ADD, ADC dan INC.

·         Perintah ADD akan menambahkan nilai pada tujuan dan asal, hasilnya akan diletakan pada tujuan.
Contoh :
MOV AH,4H ; isi AH dengan 4h
MOV AL, 12H ; isi dengan 12h
ADD AH,AL : tambahkakn nilai AH dan AL dan letakan hasilnya di AH
Contoh di atas akan menghasilkan nilai 16h yang diletakan di register AH.

·         Perbedaanya pada perintah ADC ini tujuan tempat menampung hasil pertambahan. Tujuan dan asal ditambah lagi dengan carry flag (tujuan = tujuan +asal+carry). Pertambahan yang demikian bisa memecahkan masalah seperti pertambahan pada bilangan 12345678h + 9ABCDEF0h. Seperti yang telah kita ketahui bahwa satu register hanya mampu menampung 16 bit, untuk menambahkan bisa kita gunakan seperti perintah ADC untuk memecahkannya, contoh :
MOV   AX,1234h       ;  AX = 1234hCF=0
MOV   BX,9ABCh    ; BX  =   9ABChCF=0
MOV   CX,5678h       ;BX=5678hCF=0
MOV   DX,0DEF0h   ;DX=DEF0hCF=0
ADD   CX,DX           ;CX=3568hCF=1
ADC   AX,BX           ; AX = AX+BX+CF = ACF1

Hasil penjumlahan akan ditampung pada register AX;CX yaitu ACF13568h. Adapun flag-flag yang terpengaruh oleh perintah ADD dan ADC ini adalah CF,PF,AF,ZF,SF dan OF.
Perintah INC dapat digunakan apabila kita ingin menambah sebuah bilangan dengan 1.
Sebetulnya kita bias menggunakan ADD atau ADC, namun kedua perintah tersebut akan membutuhkan 3 byte memory sedangkan INC hanya membutuhkan 1 byte memory saja.

22.      Operasi Pengurangan
-          Pengurangan dengan Satu
Perintah yang digunakan untuk pengurangan satu ini adalah perintah DEC. tata penulisan dari perintah DEC adalah:
DEC [variable/register]
-          Pengurangan selain Satu
Bila dalam penambahan kita gunakan ADD maka dalam pungurangan selain satu digunakan SUB dengan tata penulisannya adalah :
SUB tujun, asal
Contoh :
                          MOV AX, 15 ;  AX=15
                          MOV BX, 12  ; BX=12
                          SUB AX, BX ; AX=15-12=3
              SUB AX,AX ; AX=0
           Pada operasi pengurangan lebih dari 16bit, kita gunakan perintah SUB diakhiri dengan SBB. Perintah SBB akan mengurangkan nilai tujuan dengan Asal dengan cara yang sama seperti perintah SUB, kemudian hasil yang didapat dikurangi lagi dengan Carry Flag (Tujuan=Tujuan-Asal-CF).



0 komentar:

Poskan Komentar