PDA

Ver la Versión Completa : operaciones con bits


pulpin
25-04-2008, 07:16:44
amigos me presento para preguntarles si conocen funciones que trabajen con bits pertenecientes a una variable numerica no mayor a 255, necesito preguntar por ciertos bits de esta variable y cambiar algunos tambien, si conocen alguna pagina donde pueda encontrar ayuda o pueden indicarme un poco, de antemano muchas gracias.;)

escafandra
25-04-2008, 10:29:22
Pues preguntar por un bit es sencillo. Sólo tienes que hacer un and bit a bit

Testigo 0x0010 (0000 0000 0001 0000)
Variable 0x00FF (0000 0000 1111 1111)
bool TieneBit = (testgo == Variable & testigo); // si true es que tiene el bit

Cambiar un bit: operación or bit a bit

Testigo 0x0010 (0000 0000 0001 0000)
Variable 0x00EF (0000 0000 1110 1111)

Word Resultado = Testigo | Variable // 0x00FF

Saludos.


EDITO:

Me faltó la eliminación de un bit:
Testigo 0x0010 (0000 0000 0001 0000)
Variable 0x00FF (0000 0000 1111 1111)

Word Resultado = Variable & ~Testigo // Resultado 0x00EF (0000 0000 1110 1111)

Si lo que quieres es utilizar Bytes (menores de 256) pues es igual.



Otra posibilidad son los campos de bits, aunque yo prefiero los sitemas que te he comentado.

Saludos

pulpin
25-04-2008, 21:14:57
gracias nuevamente, una mas que te debo.:rolleyes: