Anzi, meglio ancora e più efficiente:
Codice:
// MAXPAGLIONI e' il numero massimo di paglioni
int mask, i;
if (PORTA)
for (mask=1, i=1; i < MAXPAGLIONI+1; mask = mask << 1, i++)
if (PORTA & mask) break;
// al termine del ciclo, i contiene il numero del paglione colpito