Migliorabile, non ho bravura da mostrare, solo tempo da dedicare (di quando in quando) a un po' di intrattenimento. Non tutti guardano la TV, fanno le parole incrociate o giocano a carte...
Sulla questione dei bit, so che spostare in avanti un bit porta alla serie numerica 1, 2, 4, 8, 16 ecc. (ammesso che tutti gli altri bit siano 0), so cos'è una maschera di bit, conosco ovviamente gli operatori "bit a bit" eppure non mi sovviene proprio come potrei collegare le tre cose a questo caso particolare. Dovrei andare a vedere se nella tabella dei codici ASCII ci sono organizzazioni dei bit con ricorrenze e combinazioni particolari? Ad esempio ho notato tempo fa che per passare da maiuscolo a minuscolo basta impostare su 1 il sesto bit, ma in questo caso direi che è irrilevante, però non mi viene in mente nessun "trucco" che possa portare a individuare le vocali con un confronto dei bit.
A 01000001
E 01000101
I 01001001
O 01001111
U 01010101
a 01100001
e 01100101
i 01101001
o 01101111
u 01110101
(ho usato il tag "code" solo per ottenere un incolonnamento migliore)