DarwinBotsManual
Abrir la app EnglishEN

not

Invierte el valor de arriba de la pila booleana: verdadero pasa a falso y falso a verdadero. Sobre la pila vacía da falso.

Datos

Palabra
not
Familia
Lógicos
Pila booleana
saca 1, pone 1
Qué hace
Invierte el tope de la pila booleana. Con la pila vacía apila falso, porque la vacía cuenta como verdadera.
Costo
Lógica
Se ejecuta en
dentro de un gen: en la condición (cond) y en el cuerpo (start o else)

not saca el valor de arriba de la pila booleana y apila el contrario.

En la sección de condiciones sirve para negar una combinación entera. Este gen hace girar al bot (.aimdx) cuando no está viendo nada (.eye5) ni es recién nacido (.robage): el not niega el resultado del or:

' gira si no ve nada y ya no es recién nacido
cond
  *.eye5 0 >
  *.robage 5 <
  or
  not
start
  50 .aimdx store
stop

Dentro del cuerpo da un «si no»: después de un grupo de stores que dependen de una condición, not la invierte y los stores que siguen corren en el caso contrario. El ejemplo está en Lógicos y en Condiciones en línea.

Para negar una sola comparación, suele ser más claro usar la opuesta: a b < en lugar de a b >= not (ver <). Para invertir los bits de un número está ~, que es otra cosa.