2.3.4.1 Operazioni bit-string su tipi interi

I tipi interi e long supportano operazioni aggiuntive che hanno significato solo per le bit-string. I numeri negativi vengono trattati come se fossero in complemento a 2 (per gli interi long, questo significa un sufficentemente largo numero di bit che non causino un overflow durante le operazioni).

Le priorit� delle operazione binarie bit per bit sono tutte inferiori di quelle delle operazioni numeriche, e superiori a quelle delle comparazioni; le operazioni unarie "~" hanno la stessa priorit� delle altre operazioni numeriche unarie ("+" e "-").

Questa tabella illustra le operazioni bit-string ordinate per priorit� ascendente (operazioni nello stesso gruppo hanno la stessa priorit�):

Operazione  Risultato  Note 
x | y bit per bit or di x e y  
x ^ y bit per bit or eclusivo di x e y  
x & y bit per bit and di x e y  
x « n x scorrimento a sinistra di n bit (1), (2)
x » n x scorrimento a destra di n bit (1), (3)
~x i bit di x invertiti  

Note:

(1)
I conteggi negativi dello scorrimento sono illegali e sollevano un'eccezione ValueError.
(2)
Uno scorrimento di n bit a sinistra � equivalente alla moltiplicazione per pow(2, n) senza il controllo sull'overflow.
(3)
Uno scorrimento a destra di n bit � equivalente alla divisione per pow(2, n) senza il controllo sull'overflow.

Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.