Inom programmering och processorarkitektur är en flagga en binär variabel som används för att ange två olika tillstånd. Ofta samlar man flaggor i ett heltal, där de olika bitarna är flaggor för olika tillstånd. Flaggor kan sättas (ges värdet 1), nollställas (ges värdet 0) och avläsas.

Exempel redigera

Processorns statusregister redigera

I, till exempel, 6502-processorns statusregister lagras följande information som ett åttabitars heltal:[1]

Bit Betydelse
0 Carry-biten. Sätts till 1 om resultatet av en instruktion som stödjer carry överskrider 8 bitar. Kan sättas manuellt med CLC- och SEC-instruktionerna.
1 Zero-biten. Sätts till 1 om resultatet av en instruktion är noll.
2 IRQ Disable. Stänger av all avbrottshantering om biten är satt. Manipuleras med CLI- respektive SEI-instruktionerna.
3 Decimal mode. Försätter processorn i BCD-läge. Manipuleras med CLD- respektive SED-instruktionerna.
4 BRK command. Sätts av instruktionen BRK, triggar ett non-maskable interrupt.
5 Oanvänd.
6 Overflow-biten. Håller reda på om en räkneoperation involverandes negativa tal har hamnat utanför talrymden.
7 Negative-biten. Sätts om högsta biten i resultatet av en instruktion är satt.

Referenser redigera

  1. ^ MOS Technology, 1976, MCS 6500 Microcomputer Family Programming Manual, sid. 24-30.