Estoy buscando una forma de trabajar basada en operador con máscaras de bits y operaciones booleanas bit a bit (XOR/NOR/OR/AND/NOT/EQV/etc). Generalmente I realmente como un enfoque de estilo de método de extensión, pero en este caso, me parece un poco complicado.BitArray y XOR
¿Hay alguna manera más extraña de trabajar con bits en C#?
BitArray a = new BitArray(0x001);
BitArray b = new BitArray(0x100);
BitArray c = new BitArray(0x010);
BitArray test = a | b; // won't compile
BitArray test2 = a^c; // won't compile
BitArray test3 = a.Or(b); // compiles
BitArray test4 = a.Xor(c); // compiles
¿Por qué no solo operar en ints? int a = 0x001; int b = 0x100; int test = a | segundo; funciona bien –
No creo que [el constructor que toma 'int'] (http://msdn.microsoft.com/en-us/library/4ty2t3fx.aspx) haga lo que crees que hace. – svick
@RobertRouhani Eso funciona para este ejemplo específico, pero ¿qué pasa con un número arbitrario de bits? tendrías que tener una estructura separada para un entero de 96 bits, por ejemplo. – annonymously