Los operadores de desplazamiento, >> y <<, mueven todos los bits en una posición hacia la derecha o la izquierda un determinado número de posiciones. El formato general de la sentencia de desplazamiento a la derecha es:
variable >> num_pos_de_bit
y el formato general de desplazamiento a la izquierda es
variable << num_pos_de_bit
Para multiplicar por 2 el 7 bastara con hacer un recorrimiento…
#include "stdio.h"
#include "stdlib.h"
#include "errno.h"
#include "unistd.h"
int main(){
unsigned int x;
int num_bit_izquierda;
x = 7;
num_bit_izquierda = 1;
x = x << num_bit_izquierda;
printf("Se recorren %d bits a la izquierda, y el resultado es: %d n", num_bit_izquierda , x);
}
El resultado del anterior codigo, sera lo siguiente:
j4nusx@j4nusx-machine:~$ gcc multiplicacion.c -o multiplicacion j4nusx@j4nusx-machine:~$ ./multiplicacion Se recorren 1 bits a la izquierda, y el resultado es: 14
En conclusion… si quieres dividir…. solo tendras que hacer un desplazamiento hacia el lado contrario.
