Buchempfehlung
Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie
Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie
Umfassend, aber leicht verständlich führt dieses Buch in die Programmierung von ATMEL AVR Mikrocontrollern ein. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Referenz - NOT

Referenz-Navigation

 

Syntax: NOT Ausdruck
Typ: Operator
Kategorie: Operatoren

NOT vertauscht die Bits im Quellausdruck; aus 1 wird 0 und aus 0 wird 1. NOT wird in Bedingungen eingesetzt, um eine Aussage ins Gegenteil zu verkehren.

Ist 'Ausdruck' vom Typ BefehlsreferenzeintragBOOLEAN, dann wird der Wahrheitswert umgedreht, d. h. NOT TRUE = FALSE und NOT FALSE = TRUE.

NOT kann mithilfe von BefehlsreferenzeintragOPERATOR überladen werden.

Beispiel 1: NOT in einer IF-THEN-Bedingung:

IF (a = 1) AND NOT (b = 7) THEN
    PRINT "a = 1 aber b <> 7."
ELSE
    PRINT "Moeglich sind..."
    PRINT "a <> 1 aber b = 7"
    PRINT "a <> 1 und b <> 7"
    PRINT "a = 1 aber b = 7"
END IF


Beispiel 2: Logische Inversion einer Zahl mit NOT

DIM AS UBYTE zahl = 100
PRINT zahl, BIN(zahl, 8)
PRINT "---", "--------"
PRINT (NOT zahl) AND 255, BIN(NOT zahl, 8)
GETKEY


Ausgabe:

100           01100100
---           --------
155           10011011

Anmerkung: Das AND 255 bewirkt hier, dass die Zahl wie ein BefehlsreferenzeintragUBYTE behandelt wird; ohne diesen Operator würde FreeBASIC den Ausdruck 'NOT zahl' zu einem BefehlsreferenzeintragINTEGER konvertieren, was das Beispiel weniger anschaulich gestalten würde.

Hinweis: NOT ist keine Funktion. Die Verwendung der Form

Not(Variable)

kann zu Problemen führen. Dazu ein kleines Beispiel:
NOT(0) + 1 wird behandelt wie NOT ((0) + 1), obwohl man diese Interpretation erwarten würde: (NOT 0) + 1

Siehe auch:
BefehlsreferenzeintragAND (Operator), BefehlsreferenzeintragOR (Operator), BefehlsreferenzeintragXOR (Operator), BefehlsreferenzeintragIMP, BefehlsreferenzeintragEQV, BefehlsreferenzeintragBit-Operatoren / Manipulationen


Zusätzliche Informationen und Funktionen
  • Der Referenzeintrag wurde am 22.07.2007 von Redakteurytwinky angelegt.
  • Die aktuellste Version wurde am 10.10.2015 von Redakteurnemored gespeichert.
  Versionen Versionen