C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA ... - 320Volt
C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA ... - 320Volt
C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA ... - 320Volt
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
}<br />
Örnek A.2. Kesme (interrupt) kullanımı<br />
Intel 8086 Registers<br />
General Purpose Registers<br />
AH/AL AX (EAX) Accumulator<br />
BH/BL BX (EBX) Base<br />
CH/CL CX (ECX) Counter<br />
DH/DL DX (EDX) Data<br />
(Exx) 386+ 32 bit register<br />
Pointer Registers Stack Registers<br />
109<br />
Segment Registers<br />
CS Code Segment<br />
DS Data Segment<br />
SS Stack Segment<br />
ES Extra Segment<br />
(FS) 386 and newer<br />
(GS) 386 and newer<br />
SI (ESI) Source Index SP (ESP) Stack Pointer<br />
DI (EDI) Destination Index BP (EBP) Base Pointer<br />
IP Instruction Pointer<br />
FLAGS - Intel 8086 Family Flags Register<br />
0 CF Carry Flag<br />
1 1<br />
2 PF Parity Flag<br />
3 0<br />
4 AF Auxiliary Flag<br />
5 0<br />
6 ZF Zero Flag<br />
7 SF Sign Flag<br />
8 TF Trap Flag (Single Step)<br />
#include <br />
#include <br />
main()<br />
{<br />
union REGS a;<br />
clrscr();<br />
a.h.ah = 0x2A; /* Dos servislerinden 2Ah = get system date */<br />
int86(0x21,&a,&a); /* int 21h dos servisleri */<br />
printf("makinanin tarihi = %d/%d/%d\n", a.h.dl, a.h.dh, a.x.cx);<br />
a.h.ah = 0x36; /* Diskteki bos alan */<br />
9 IF Interrupt Flag<br />
A DF Direction Flag<br />
B OF Overflow flag<br />
C,D IOPL I/O Privilege Level (286+ only)<br />
E NT Nested Task Flag (286+ only)<br />
F 0<br />
10 RF Resume Flag (386+ only)<br />
11 VM Virtual Mode Flag (386+ only)