operaciones con bits
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.;)
|
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 |
gracias nuevamente, una mas que te debo.:rolleyes:
|
La franja horaria es GMT +2. Ahora son las 20:04:21. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi