Calculadora de desplazamiento de bits (izquierda y derecha)
Desplaza un entero a la izquierda o a la derecha un número elegido de bits y ve el resultado en decimal, binario y hexadecimal dentro de un ancho de bits fijo.
Dirección
Right-shift type
bits
n << 2 = 10101000 (0xA8)
- 1
Mask n to 8 bits
42 & (256 − 1) = 42 - 2
n × 2^2 (mod 2^8)
(42 × 4) mod 256 = 168A left shift by k is equivalent to multiplying by 2^k within the bit width.
¿Cómo funciona esta calculadora?
Un desplazamiento a la izquierda mueve los bits hacia el extremo alto y rellena con ceros por la derecha; un desplazamiento a la derecha los mueve hacia el extremo bajo. Los desplazamientos a la derecha lógicos rellenan con ceros por la izquierda, mientras que los aritméticos copian el bit de signo. Los resultados se enmascaran al ancho de bits elegido y se muestran en decimal, binario y hexadecimal.
Fórmula
How this is calculated
Proporcionas un entero n, una cantidad de desplazamiento k, una dirección (izquierda o derecha), el tipo de desplazamiento a la derecha (lógico o aritmético) y un ancho de bits w. Toda la aritmética se hace con enteros de precisión arbitraria y luego se restringe a w bits usando mask = 2^w - 1. La entrada se reduce primero a su patrón de w bits, por lo que los valores negativos se representan en complemento a dos.
Un desplazamiento a la izquierda calcula (n << k) & mask: cada bit se mueve k posiciones hacia el extremo más significativo, las k posiciones bajas se rellenan con ceros, y cualquier bit que pase por encima del tope del ancho desborda y se descarta. Un desplazamiento a la derecha lógico calcula (n & mask) >> k: los bits se mueven k posiciones hacia el extremo menos significativo, los k bits bajos se descartan, y las k posiciones superiores se rellenan con ceros. Un desplazamiento a la derecha aritmético se comporta igual salvo que las k posiciones superiores vacías se rellenan con copias del bit de signo original (el MSB), lo que preserva el signo de los números en complemento a dos.
Los resultados se muestran como un decimal sin signo, una cadena binaria de w bits rellenada con ceros y hexadecimal, más la interpretación con signo en complemento a dos. Desplazar por k mayor o igual que w da 0 para los desplazamientos a la izquierda y a la derecha lógicos, o un patrón de todo unos / todo ceros para los desplazamientos a la derecha aritméticos según el bit de signo. Un k negativo se rechaza.
Preguntas frecuentes
Un desplazamiento a la derecha lógico siempre rellena los bits altos vacíos con ceros, tratando el valor como sin signo. Un desplazamiento a la derecha aritmético copia el bit de signo (el bit más significativo) en esas posiciones, preservando el signo para que los números negativos en complemento a dos sigan siendo negativos.
El resultado se enmascara al ancho de bits elegido. Los bits desplazados más allá de la posición más significativa desbordan y se descartan, por lo que dentro de un ancho fijo un desplazamiento a la izquierda puede dar la vuelta a un valor más pequeño.
Un n negativo se convierte a su patrón de complemento a dos de w bits antes de desplazar. La salida muestra tanto el decimal sin signo como la interpretación decimal con signo de ese patrón.
También conocido como
TG we-Calculate Editorial Team. (2026). Calculadora de desplazamiento de bits (izquierda y derecha) [Online calculator]. TG we-Calculate. https://we-calculate.com/es/calculator/bit-shift-calculator
TG we-Calculate Editorial Team. "Calculadora de desplazamiento de bits (izquierda y derecha)." TG we-Calculate. 2026. https://we-calculate.com/es/calculator/bit-shift-calculator.
TG we-Calculate Editorial Team, "Calculadora de desplazamiento de bits (izquierda y derecha)," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/es/calculator/bit-shift-calculator
@misc{wecalculate_bit_shift_calculator, title = {Calculadora de desplazamiento de bits (izquierda y derecha)}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/es/calculator/bit-shift-calculator}}, year = {2026}, note = {TG we-Calculate} }
¿Te ayudó esta calculadora?
