Lettura contemporanea più input

La verifica dei bit di una variabile o registro che sia la puoi fare con le bitwise, o anche senza usando lo switch case

0000 0001 Sono 8 bit è vale 1 in decimale
byte myport = 1 // o byte myport = 0x1 equivale a 0000 0001 in binario

if(myport == 1) valuta la condizione come vera

Se invece hai proprio la necessità di accedere ai singoli bit, puoi usare le struct C con i bitfield, si tratta di una struttura dati grande almeno
8 bit composta da 8 campi ognuno grande 1 bit. Es se la struttura si chiama porta pui accedere ad ogni bit così:

porta.b0
porta.b1
porta.b2
ecc.

Ciao.