Logische Befehle
And
Or
X0r
Akku löschen/komplementieren
And
Der Befehl
anl op1, op2 ist ein bitweises Und-Verknüpfung der Operanden
op1 und
op2.
Das Ergebnis steht nach der Ausführung in
op1.
Ein Bit im Ergebnis ist genau dann 1, wenn die ensprechenden Bit in
op1 und
op2 auf 1 sind, sonst 0.
In
Abbildung 1 ist ein Beispiel mit Werten abgebildet. Hier werden die Werte
11001010 und
01100110
bitweise mit Und verknüpft.

Abb. 1: Bitweises Und
Hier die Und-Befehle in der Übersicht:
| Mnemonic | Funktion | Bytes | MZ | Flags |
| ANL A,Rr | Der Akkumulator wird überschrieben durch das Ergebnis der UND-Verknüpfung von Akku und dem Inhalt von Rr. | 1 | 1 | P |
| ANL A,dadr | Der Akkumulator wird überschrieben durch das Ergebnis der UND-Verknüpfung von Akku und dem Inhalt von dadr. | 2 | 1 | P |
| ANL A,@Ri | Der Akkumulator wird überschrieben durch das Ergebnis der UND-Verknüpfung von Akku und dem Inhalt der internen Datenspeicherzelle, die durch den Inhalt von Ri adressiert wird. | 1 | 1 | P |
| ANL A,#const8 | Der Akkumulator wird überschrieben durch die UND-Verknüpfung von Akku und der 8-Bit-Konstanten. | 2 | 1 | P |
| ANL dadr,A | Der Inhalt von dadr wird überschrieben durch die UND-Verknüpfung von Akku und dem Inhalt von dadr. | 2 | 1 | - |
| ANL dadr,#const8 | Der Inhalt von dadr wird überschrieben durch die UND-Verknüpfung der 8-Bit-Konstanten und dem Inhalt von dadr. | 3 | 2 | - |
Or
Der Befehl
orl op1, op2 ist ein bitweises Oder-Verknüpfung der Operanden
op1 und
op2.
Das Ergebnis steht nach der Ausführung in
op1.
Ein Bit im Ergebnis ist genau dann 1, wenn das ensprechende Bit in
op1 auf 1 ist oder in
op2 auf 1 ist, sonst 0.
In
Abbildung 2 ist ein Beispiel mit Werten abgebildet. Hier werden die Werte
11001010 und
01100110
bitweise mit Oder verknüpft.

Abb. 2: Bitweises Oder
Hier die Oder-Befehle in der Übersicht:
| Mnemonic | Funktion | Bytes | MZ | Flags |
| ORL A,Rr | Der Akkumulator wird überschrieben durch die ODER-Verknüpfung von Akku und dem Inhalt von Rr. | 1 | 1 | P |
| ORL A,dadr | Der Akkumulator wird überschrieben durch die ODER-Verknüpfung von Akku und dem Inhalt von dadr. | 2 | 1 | P |
| ORL A,@Ri | Der Akkumulator wird überschrieben durch die ODER-Verknüpfung von Akku und dem Inhalt der internen Datenspeicherzelle, die durch den Inhalt von Ri adressiert wird. | 1 | 1 | P |
| ORL A,#const8 | Der Akkumulator wird überschrieben durch das Ergebnis der ODER-Verknüpfung von Akku und der 8-Bit-Konstanten. | 2 | 1 | P |
| ORL dadr,A | Der Inhalt von dadr wird überschrieben durch die ODER-Verknüpfung von Akkumulator und dem Inhalt von dadr. | 2 | 1 | - |
| ORL dadr,#const8 | Der Inhalt von dadr wird überschrieben durch die ODER-Verknüpfung der 8-Bit-Konstanten und dem Inhalt von dadr. | 3 | 2 | - |
XOr
Der Befehl
xrl op1, op2 ist ein bitweises XOr-Verknüpfung der Operanden
op1 und
op2.
Das Ergebnis steht nach der Ausführung in
op1.
Ein Bit im Ergebnis ist genau dann 1, wenn das ensprechende Bit entweder in
op1 auf 1 ist oder in
op2 auf 1 ist.
Anders formuliert: Sind die Bits in den Operanden unterschiedlich, so ist das Ergebnisbit 1, sind sie gleich ist das Ergebnis 0.
Abbildung 3 zeigt ein Beispiel für eine bitweise Xor-Verknüpfung.

Abb. 3: Bitweises XOr
Hier die XOr-Befehle in der Übersicht:
| Mnemonic | Funktion | Bytes | MZ | Flags |
| XRL A,Rr | Der Akkumulator wird überschrieben durch das Ergebnis der EXCLUSIVE-ODER-Verknüpfung von Akku und dem Inhalt von Rr. | 1 | 1 | P |
| XRL A,dadr | Der Akkumulator wird überschrieben durch das Ergebnis der EXCLUSIVE-ODER-Verknüpfung von Akku und dem Inhalt von dadr. | 2 | 1 | P |
| XRL A,@Ri | Der Akkumulator wird überschrieben durch die EXCLUSIVE-ODER-Verknüpfung von Akku und dem Inhalt der internen Datenspeicherzelle, die durch den Inhalt von Ri adressiert wird. | 1 | 1 | P |
| XRL A,#const8 | Der Akkumulator wird überschrieben durch das Ergebnis der EXCLUSIVE-ODER-Verknüpfung von Akku und der 8-Bit-Konstanten. | 2 | 1 | P |
| XRL dadr,A | Der Inhalt von dadr wird überschrieben durch die EXCLUSIVE-ODER-Verknüpfung von Akkumulator und dem Inhalt von dadr. | 2 | 1 | - |
| XRL dadr,#const8 | Der Inhalt von dadr wird überschrieben durch die EXCLUSIVE-ODER-Verknüpfung der 8-Bit-Konstan-und dem Inhalt von dadr. | 3 | 2 | - |
Akku löschen/komplementieren
Der Befehl clr A löscht den Akkumulator, d.h. er setzt alle Bits im Akku auf 0. Den selben Effekt haben die Befehle
mov A,#0 und anl A, #0. Allerdings benötigt clr A nur 1 Byte im ROM die anderen Befehle jeweils 2.
Der Befehl cpl A invertiert den Akkumulator bitweise, d.h. jede binäre 1 im Akku wird zu 0 und jede 0 zu einer 1.
Denselben Effekt hätte z.B. der Befehl xrl A, #0FFh.
Hier die zwei Befehle Clr und CPL:
| Mnemonic | Funktion | Bytes | MZ | Flags |
| CLR A | Der Akkumulator wird gelöscht. | 1 | 1 | P |
| CPL A | Der Inhalt des Akkumulators wird invertiert. | 1 | 1 | P |