Hallo Garret,
SYSTEM_STATUS ist eine Variable, die durch die Systemroutine COMNAV_STATUS gefüllt wird. Die Variable ist bitweise verschlüsselt. Dabei ist Bit0 = 1, wenn der rechte Collisionssensor anspricht, Bit1 = 1 wenn der linke Collisionssensor anspricht. &H03 ist keine Adresse, sondern der Wert, wenn BEIDE Sensoren ansprechen.
if (SYSTEM_STATUS and &H03) = 3 ist ein Ausdruck aus der Boolschen Algebra. Beide Größen werden miteinander verglichen.
Rechter Sensor spricht an: 2 hoch 0 = 1
Linker Sensor spricht an: 2 hoch 1 = 2
2 + 1 = 3 -> Bedingung erfüllt -> Befehl 'goto move_back' ausführen
Hoffentlich habe ich es einigermaßen verständlich ausgedrückt.
MfG
GaronG
Lesezeichen