1.Menggunakan Fungsi int86
2.Menggunakan Teknik Inline Assembly
Contoh Sederhana penggunaan int86 untuk mencetak karakter menggunakan interupsi BIOS 10 heksadesimal servis 09 heksadesimal.
#include <conio.h>
#include <dos.h>
#include <stdlib.h>
#define VIDEO_INT 0x10 /* BIOS Video Interrupt */
int main(void)
{
union REGS in, out; /* Deklarasi variabel */
in.h.ah = 0x09; /* AH = 9 heksadesimal */
in.h.al = 'A'; /* AL = 41 heksadesimal, huruf A */
in.h.bh = 0x00; /* BH = 0, halaman video */
in.h.bl = 0x07; /* BL = 7, warna huruf dan dasar */
in.h.ch = 0x00; /* CH dan CL menentukan banyak */
in.h.cl = 0x01; /* huruf yang akan dicetak */
clrscr();
int86(VIDEO_INT, &in, &out);
getch();
return EXIT_SUCCESS;
}
Contoh Sederhana penggunaan Teknik Inline Assembly
#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, 0x41; // AL = 41 heks., huruf A
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;
}
Tidak ada komentar:
Posting Komentar