Estoy trabajando en un pequeño proyecto de interfaz de hardware basado en la placa Velleman k8055.¿Por qué Y dos números para obtener un booleano?
El código de ejemplo viene en VB.Net y estoy reescribiendo esto en C#, sobre todo para tener la oportunidad de recorrer el código y darle sentido a todo.
Una cosa me ha desconcertado sin embargo:
En una etapa que leen todas las entradas digitales y luego establecer una casilla de verificación en base a la respuesta a las entradas digitales de lectura (que vienen de vuelta en un entero) y entonces ellos y este con un número:
i = ReadAllDigital
cbi(1).Checked = (i And 1)
cbi(2).Checked = (i And 2) \ 2
cbi(3).Checked = (i And 4) \ 4
cbi(4).Checked = (i And 8) \ 8
cbi(5).Checked = (i And 16) \ 16
no he hecho los sistemas digitales desde hace tiempo y entiendo lo que están tratando de hacer, pero ¿qué efecto tendría que tener que soportar y dos números? ¿No todo lo que está por encima de 0 equivale a verdadero?
¿Cómo traducirías esto a C#?
Gracias por todas las respuestas ... Claramente nunca tuve la oportunidad de hacer cosas de Bitwise en el pasado ... Bueno, supongo No puedo decir eso nunca más. ;-) – Gineer