Diferencia entre revisiones de «bitshift right»
De ArduWiki
(→Vea también) |
|||
Línea 22: | Línea 22: | ||
== Vea también == | == Vea también == | ||
− | * [[not]] | + | * [[not]] - (<nowiki>!</nowiki>) |
− | * [[and]] | + | * [[and]] - (<nowiki>&&</nowiki>) |
− | * [[or]] | + | * [[or]] - (<nowiki>||</nowiki>) |
− | * [[bitshift left]] | + | * [[not bit a bit]] - (<nowiki>~</nowiki>) |
+ | * [[and bit a bit]] - (<nowiki>&</nowiki>) | ||
+ | * [[or bit a bit]] - (<nowiki>|</nowiki>) | ||
+ | * [[xor bit a bit]] - (<nowiki>^</nowiki>) | ||
+ | * [[bitshift left]] - (<nowiki><<</nowiki>) | ||
== Referencias == | == Referencias == |
Revisión del 23:27 25 abr 2019
Descripción
Desplaza hacia la derecha (hacia el bit menos significativo) una cantidad determinada de bits de una variable o constante; rellenando con ceros.
Sintaxis
valor = valor >> nBits; valor >>= nBits;
- valor
- Constante o variable a trabajar.
- nBits
- Cantidad de bits a desplazar. Debe ser un valor entero positivo.
Advertencias
- Esta operación desplaza bits descartando los que hayan quedado fuera, no los rota de posición. Por lo tanto, desplazar la cantidad suficiente de bits puede resultar en un valor cero.
Ejemplo
Sirve para realizar una división entera con un cociente potencia de base 2
analogWrite(pin, analogRead(A0) >> 2); // Mucho más rápido que map() o una división.
analogRead(A0) >> 2 equivale a analogRead(A0) / 4
Vea también
- not - (!)
- and - (&&)
- or - (||)
- not bit a bit - (~)
- and bit a bit - (&)
- or bit a bit - (|)
- xor bit a bit - (^)
- bitshift left - (<<)