Monday, April 24, 2017

Memanggil Interupsi BIOS dan DOS Menggunakan Teknik Inline Assembly pada C++

C++, codingan, pemogramman,

Berikut ini adalah artikel tentang Memanggil Interupsi BIOS dan DOS Menggunakan Teknik Inline Assembly pada C++ . Bagi yang penasaran yuk mari kita simak !

Memanggil Interupsi BIOS dan DOS Menggunakan Teknik Inline Assembly pada C++

     Teknik inline assembly adalah teknik menuliskan kode-kode bahasa assembly diantara kode-kode bahasa pemrograman yang lain seperti Pascal dan C/C++. Tidak semua kompilator memiliki kemampuan mengkompilasi kode inline assembly, Borland C++ dan Turbo C/C++ memiliki kemampuan ini. Cara menggunakan teknik inline assembly pada Borland C++ adalah dengan menggunakan kata cadangan asm dan diikuti oleh kode program bahasa assembly serta diakhiri dengan tanda semicolon/titik koma (;).
 
      Dibawah ini sintaks penggunaan kata kunci asm:
 asm <opcode> <operand>; /* Komentar bahasa C/C++ */

      Kata kunci asm bisa juga diketikan sebagai blok pernyataan, seperti dibawah ini:
 asm { 
<opcode> <operand>; /* Komentar bahasa C/C++ */ 
<opcode> <operand>; /* atau baris baru */
}

      Dibawah ini adalah contoh untuk mencetak huruf F di layar menggunakan teknik inline assembly pada Borland C++ ;
 #include <conio.h> 
#include <dos.h> 
#include <stdlib.h> 

#define VIDEO_INT 0x10 // BIOS Video Interrupt 

int main(void) 
clrscr(); 

asm mov ah, 0x09; // AH = 9 heks. 
asm mov al, 0x46; // AL = 46 heks., huruf F 
asm mov bh, 0x00; // BH = 0 heks., halaman layar 
asm mov bl, 0x07; // BL = 7 heks., warna huruf 
asm mov ch, 0x00; // CH dan CL menentukan banyak 
asm mov cl, 0x01; // huruf yang akan dicetak 
asm int VIDEO_INT; // Interupsi BIOS 10h 

getch(); 
return EXIT_SUCCESS; 
}

     Instruksi mov ah, 0x09 artinya menyimpan nilai 9 heksadesimal kedalam register AH. Demikian juga dengan instruksi mov bh, 0x00 atau mov cl, 0x01. Dalam pemrograman bahasa assembly opcode mov digunakan untuk memberikan nilai kedalam suatu operand, dalam hal ini register AH, AL, BH, BL dan sebagainya. Pada instruksi int VIDEO_INT bukan berarti mendeklarasikan variabel VIDEO_INT dengan tipe data integer, melainkan menjalankan interupsi yang nilai interupsinya disimpan dalam konstanta VIDEO_INT, yaitu 0x10 atau 10 heksadesimal. Dalam pemrograman bahasa assembly opcode int digunakan untuk menjalankan interupsi sesuai dengan nomor interupsi sesudah kata kunci int.

      Berikut ini contoh foto codingan sepert yang di atas :
codingan, C++, pemogramman
       Dan ini contoh foto hasil runingan contoh codingan di atas ;
codingan, runing, pemogramman, C++

 Sekian dulu yang dapat saya sampaikan, saya mohon maaf apabila ada kesalahan dalam penyampaian karena saya baru belajar dalam bidang pemograman , 
Wassallamuallaikum.wr.wb

Komentar spam dilarang
EmoticonEmoticon