Statusflags

Zeroflag

Das Zeroflag, ZF, deutsch Nullflag, wird gesetzt, wenn das Ergebnis der letzten arithmetischen oder bitweise logischen Operation Null war. Beispiel:

mov ax,1 ;Zahlenwert 1 nach ax transportieren dec ax ;ax um 1 erniedrigen, Ergebnis ist Null ;Zeroflag wird gesetzt

Signflag

Das Signflag, SF, Vorzeichenflag ist gesetzt, wenn das Ergebnis der letzten Operation negativ war. Beispiel:

mov ax,5 ;Zahlenwert 5 nach ax einschreiben sub ax,7 ;7 von ax subtrahieren Ergebnis ist negativ ;Signflag wird gesetzt

Carryflag

Das Carryflag, CF, Übertragsflag ist gesetzt, wenn bei der letzten Operation der vorzeichenlose Wertebereich überschritten wird. Anders ausgedrückt: wenn die Anzahl der vorhandenen Bits für das Ergebnis nicht ausreicht (s.auch Overflowflag) Beispiel:

mov al,250 ;Zahlenwert 250 nach al einschreiben add al,10 ;10 zu al addieren. Ergebnis (260) überschreitet ;den Wertebereich, da AL ein 8-Bit-Register ist und die ;Werte 0..255 darstellen kann; Carryflag wird gesetzt

Overflowflag

Das Overflowflag, OF, Überlaufsflag ist gesetzt, wenn bei der letzten Operation der vorzeichen- behaftete Wertebereich überschritten wird. Im Gegensatz zum Carryflag betrifft das Overflowflag das Rechnen mit vorzeichenbehafteten Zahlen, also Zahlen die positiv und negativ sein können. Beispiel:

mov al,120 add al,10 ;Zahlenwert 120 nach al einschreiben ;10 zu al addieren. Ergebnis (130) überschreitet ;den Wertebereich, da AL ein 8-Bit-Register ist und die ;Werte -128..+127 darstellen kann; Overflowflag wird gesetzt

Parityflag

Das Parityflag, PF, Paritätsflag wird gesetzt, wenn bei der letzten Operation ein Bitmuster entstanden ist, das in den niederwertigen acht Bit aus einer geraden Anzahl von Einsen besteht. Das Parityflag wird relativ selten benutzt, u.a. weil es nur acht Bit auswertet. Beispiel:

mov dl,110010b add dl,1 ; binären Zahlenwert 110010 nach dl einschreiben ;1 zu ax addieren. Das Ergebnis 110011 hat eine ;gerade Anzahl von Einsen -> Parityflag wird gesetzt

Auxiliary Carry Flag Das Auxiliary Carry Flag, AF, Hilfsübertragsflag, wird gesetzt, wenn bei der letzten Operation ein Übertrag von Bit 3 auf Bit 4, also ein Übertrag vom der unteren auf die obere Tetrade, ent- standen ist. Dieses Flag ist nur beim Rechnen mit BCD-Zahlen nützlich und wird prozessorintern von den Ausrichtungsbefehlen benutzt.