Il valore ASCII di '1' e' 0x31. In binario
00110001
L'operazione ( ... shr 3) and $03 fa in modo che vengano isolati i due bit in rosso
00110001
Lo shr effettua lo shift a destra 3 volte, quindi
00011000 primo shr
00001100 secondo shr
00000110 terzo shr
e la and $03 considera soltanto i primi due bit a destra, azzerando gli altri ... quindi
00000010
Il risultato in decimale, quindi, sarà 2