30.01.2013 Views

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

SHOW MORE
SHOW LESS

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)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!