FLAGS register (computing)

From Wikipedia, the free encyclopedia

This article discusses the flag register specific to the x86 architecture. For a general discussion about flag registers, see status register.

The FLAGS register is a special register in Intel x86 microprocessors that contains the current state of the processor. This register is 16 bits wide. Its successors, the EFLAGS and RFLAGS registers are 32 bits and 64 bits wide, respectively. The wider registers retain compatibility with their smaller predecessors.


Intel x86 FLAGS Register
Bit # Abbreviation Description Category*
FLAGS
0 CF Carry flag S
1 1 Reserved  
2 PF Parity flag S
3 0 Reserved  
4 AF Adjust flag S
5 0 Reserved  
6 ZF Zero flag S
7 SF Sign flag S
8 TP Trap flag (single step) X
9 IF Interrupt enable flag X
10 DF Direction flag C
11 OF Overflow flag S
12, 13 IOPL I/O privilege level (286+ only) X
14 NT Nested task flag (286+ only) X
15 0 Reserved  
EFLAGS
16 RF Resume flag (386+ only) X
17 VM Virtual-8086 mode flag (386+ only) X
18 AC Alignment check (486SX+ only) X
19 VIF Virtual interrupt flag (Pentium+) X
20 VIP Virtual interrupt pending (Pentium+) X
21 ID Identification (Pentium+) X
22 0 Reserved  
23 0 Reserved  
24 0 Reserved  
25 0 Reserved  
26 0 Reserved  
27 0 Reserved  
28 0 Reserved  
29 0 Reserved  
30 0 Reserved  
31 0 Reserved  
RFLAGS
32-63 0 Reserved  

S: Status flag
C: Control flag
X: System flag

[edit] See also

In other languages