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.

ExempelRedigera

Processorns statusregisterRedigera

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.

ReferenserRedigera

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