DarwinBotsManual
Abrir la app EnglishEN

pow

Eleva el número de abajo a la potencia del de arriba: 2 10 pow da 1024. El exponente se limita a ±10.

Datos

Palabra
pow
Familia
Avanzados
Pila entera
saca 2, pone 1
Qué hace
Saca dos números y apila el de abajo elevado al de arriba, redondeado. El exponente se recorta a ±10, base 0 da 0 y el resultado se queda en ±2000 millones.
Costo
Comando avanzado; debugint y debugbool no cuestan
Se ejecuta en
dentro de un gen: en la condición (cond) y en el cuerpo (start o else)

a b pow deja a elevado a la b. 2 10 pow da 1024, -2 3 pow da −8 y 5 0 pow da 1.

PalabraPila después
22
102 10
pow1024

Tiene varios límites que conviene conocer:

Un uso práctico es calcular el valor de un bit para usarlo con los operadores bit a bit: 2 *50 pow es 1, 2, 4, 8… según lo que haya en la celda 50.

cond
start
  2 *50 pow 51 store
  *50 1 add 50 store
stop

En este bot la celda 51 va tomando los valores 1, 2, 4, 8… 1024, y ahí se queda, porque el exponente no pasa de 10. La operación inversa es root, y el exponente que hace falta para llegar a un número lo da logx.