Operadores bit a bit en C [Con ejemplo de codificación]
Publicado: 2020-10-26Tabla de contenido
Introducción
Los operadores son componentes esenciales de todo lenguaje de programación. Son los símbolos que se utilizan para lograr ciertas operaciones lógicas, matemáticas o de programación. C proporciona varios operadores para realizar múltiples operaciones, como aritmética, lógica y manipulación de bits. Hay ocho tipos diferentes de operadores en C. Estos son:
- Operadores aritméticos en C
- Operadores Lógicos en C
- Operador condicional en C
- Operadores relacionales en C
- Operadores de incremento y decremento en C
- Operadores bit a bit en C
- Operadores de asignación en C
- Operadores especiales en C
En este artículo, aprenderá sobre los operadores bit a bit en C y cómo implementarlos.
¿Qué es un operador bit a bit?
El operador bit a bit en C es un tipo de operador que opera en matrices de bits, cadenas de bits y ajustando valores binarios con bits individuales en el nivel de bits. Para manejar la electrónica y las operaciones relacionadas con IoT, los programadores usan operadores bit a bit. Puede operar más rápido a un nivel de bits.
El operador bit a bit en C realiza su operación en los bits individuales de su operando, donde los operandos son valores o expresiones en los que opera un operador. Estos operadores también se utilizan para realizar las acciones principales, así como operaciones aritméticas de alto nivel que requieren el apoyo directo del procesador. Podemos subcategorizar aún más los operadores bit a bit en tres subtipos en función de sus principios de funcionamiento, lógicos (Y bit a bit, O y XOR), Desplazamiento (Desplazamiento a la derecha y desplazamiento a la izquierda) y Complemento (NO a nivel bit).
Hay seis operadores bit a bit diferentes en C . Estos son:
· Operador AND bit a bit (&)

· Operador OR bit a bit (|)
· Operador OR exclusivo bit a bit (^)
· Operador binario complemento a uno u bit a bit NOT (~)
· Operador de desplazamiento a la izquierda bit a bit (<<)
· Operador de desplazamiento a la derecha bit a bit (>>)
Usando operadores bit a bit, los programadores pueden cambiar los bits individuales de cualquier valor contenido en el operando. Podemos ver un solo byte de la memoria de la computadora como 8 bits que significan el estado verdadero o falso de 8 banderas. Los operadores bit a bit generalmente se aplican para definir valores de bandera en sistemas operativos y software de controlador. Por ejemplo, en una propiedad de archivo, el modo de solo lectura se expresa conceptualmente como un bit indicador en el sistema operativo, y el operador bit a bit se usa para alternar entre el valor verdadero y el falso.
Aquí hay una tabla que muestra cómo resulta el cálculo de los operadores bit a bit.
X | y | x e y | x | y | x ^ y |
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
1 | 0 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 0 |
Hay seis tipos diferentes de operadores bit a bit en C . Estos son:
El AND bit a bit (&) en C: El compilador de C reconoce el AND bit a bit con el operador &. Toma dos operandos y realiza la operación AND para cada bit de los dos números de operandos. Es un operador binario. La salida de este operador dará como resultado 1 solo si ambos bits son 1.
El OR bit a bit (|) en C: El compilador de C reconoce el OR bit a bit con | operador. Toma dos operandos y realiza la operación OR para cada bit de los dos números de operandos. También es un operador binario. La salida de este operador dará como resultado 1 si cualquiera de los dos bits es 1.

Bitwise XOR (^) en C: el compilador de C reconoce Bitwise XOR con el operador ^. Toma dos operandos y realiza la operación XOR para cada bit de los dos números de operandos. También es un operador binario. La salida de este operador dará como resultado 1 si ambos bits tienen valores diferentes.
Complemento a uno binario o operador NOT bit a bit (~) en C: el compilador de C reconoce el operador NOT bit a bit con ~. Toma solo un operando y realiza la inversión de todos sus dígitos. Es un operador unario. La salida de este operador invertirá todos los bits existentes de ese operando.
Operador de desplazamiento a la izquierda bit a bit (<<) en C: el compilador de C reconoce la operación de desplazamiento a la izquierda con este <<. Solo toma dos operandos y desplaza todos los bits del primer operando a la izquierda. El segundo operando decide cuántos números de lugares este operador desplazará sus bits. Es un operador binario.
Operador de desplazamiento a la derecha bit a bit (>>) en C: el compilador de C reconoce la operación de desplazamiento a la izquierda con este >>. Solo toma dos operandos y desplaza todos los bits del primer operando a la derecha. El segundo operando decide cuántos números de lugares este operador desplazará sus bits. Es un operador binario.
Leer: Operadores en Python: una guía para principiantes de aritmética, relacional, lógica y más
Programa para Operador Bitwise en C
Ahora echemos un vistazo al programa usando todos los operadores bit a bit.
#incluir <stdio.h>
int principal()
{
carácter sin signo x = 20, y = 21; // x = 20 (00010100), y = 21 (00010101)
int g = 0;
g = x e y; /* 20 = 010100 */
printf(” El resultado de Bitwise AND es %d \n”, g );
gramo = x | y; /* 21 = 010101 */
printf(” El resultado de Bitwise OR es %d \n”, g );
g = x ^ y; /* 1 = 0001 */
printf(” El resultado de Bitwise XOR es %d \n”, g );
g = ~x;
printf(” El resultado de Bitwise NOT es %d \n”, g );
g = x << 1;
printf(” El resultado de Bitwise Left Shift es %d \n”, g );
g = x >> 1;
printf(” El resultado de Bitwise Right Shift es %d \n”, g );
devolver 0;
}
PRODUCCIÓN:
El resultado de Bitwise AND es 20
El resultado de Bitwise OR es 21
El resultado de Bitwise XOR es 1
El resultado de Bitwise NOT es -21

El resultado de Bitwise Left Shift es 40
El resultado de Bitwise Right Shift es 10
Lea también: Tutorial de Python: configuración, herramientas, características, aplicaciones, beneficios, comparación
Conclusión
Los operadores bit a bit son un tipo particular de operadores en C que se utilizan para la programación a nivel de bit. Es fundamental conocer el uso del operador bit a bit ya que brinda una manera eficiente de ahorrar espacio en la representación de datos. Los programadores usan estos operadores en varios campos, como la programación de sistemas, la programación integrada y el diseño de protocolos. Por lo tanto, los programadores necesitan saber su uso.
upGrad trae programación con C y mucho más con el Diploma PG de upGrad en Desarrollo de Software Especialización en Desarrollo Full Stack . Un programa para hacerte emerger como un desarrollador de pila completa y aprender a construir algunas de las increíbles aplicaciones. Es un extenso programa de 12 meses que incluye trabajar en proyectos y tareas en vivo y también entrenar 15 lenguajes y herramientas de programación. Además, cuenta con apoyo profesional de todos los tiempos con entrevistas simuladas y asistencia laboral.