Hola
Tengo una pregunta con respecto al uso de bits. Tengo que hacer un programa en el cual forme un nuevo numero a partir de los 2 bits mas significativos del otro.
Es decir....Si me dan el numero 4921.
Tengo que fijarte en los 2 bits mas significativos(los ultimos dos de la izquierda) y formar un nuevo numero a partir de esto.
No tengo idea como hacerlo.
Explícate mejor.
El numero tiene que tener un tamaño predefinido de bytes, en tu caso el resultado seria 0 para esos dos bits tomando un int de 4 bytes o un short de 2 bytes. ¿Es un ejemplo que se te ocurrio a vos?
4921 como short:
0001 0011 0011 1001
4921 como int:
0000 0000 0000 0000 0001 0011 0011 1001
Lo que uno haria es un desplazamiento de bits a la derecha:
https://es.wikipedia.org/wiki/Operador_a_nivel_de_bits#Desplazamientos_de_bits
Por ejemplo x >> 14 te daria los dos bits mas significativos de un short.