Cómo usar operadores de bits en lenguaje c, tontos y confusos
Operador de cambio a la izquierda <<
El operador de desplazamiento a la izquierda ** << ** se utiliza para desplazar todos los bits binarios del operando en varios bits. Los bits bajos se rellenan con 0. Si hay suficientes 0 a la izquierda, equivale a multiplicar el número por 2; de lo contrario, los 1 de la izquierda se pierden y el número se vuelve más pequeño. Tomando el número 8 como ejemplo, su sistema binario es :, 00001000
después de desplazar un bit a la izquierda 00010000
, es :, que es 16.
#include<stdio.h>
int main()
{
int a = 8;
printf("%d",a<<1);
return 0;
}
Los resultados son los siguientes:
Operador de cambio a la derecha >>
El operador de desplazamiento a la derecha ** >> ** se utiliza para desplazar todos los bits binarios del operando varios bits a la derecha, descartar los bits bajos y agregar 0 o 1 a los bits altos. Si el bit más alto de los datos es 0, entonces complete 0; si el bit más alto es 1, luego complete 1, es decir, el signo permanece sin cambios. O tome el número 8 como ejemplo, su binario es :, 00001000
después de desplazar un bit a la derecha Para :, 00000100
que es 4.
#include<stdio.h>
int main()
{
int a = 8;
printf("%d",a>>1);
return 0;
}