Espacio de tecnologia, software libre y sus derivados. Una horda de monos entrenados escriben de vez en cuando por aqui algunas noticias, opiniones e incluso alguna que otra cosa fuera del tema. Maqueros, favor de abstenerse que no somos lo suficientemente guapos.

Piano daemon

Multiplicando y dividiendo en C, utilizando Operadores sobre bits

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.

Comenta