2009-08-13 5 views

Répondre

5

C'est le même opérateur en php. $n <<= 1;

2

$n <<= 1; est valide php

6

Cette déclaration est l'abréviation de

n = n << 1; 

l'opérateur < < est un moyen de changement de gauche au niveau du bit, par des positions n. Son homologue est >>, ce qui signifie passer à droite par n. Pour visualiser, disons que vous avez la valeur 5, et que vous voulez la décaler de 2 positions. En binaire:

0000 0101 -> 5 
shift left by 2: 
0001 0100 -> 20 

Fondamentalement, vous décalez tous les bits dans la direction donnée, et remplissez avec des zéros. Plus ou moins équivalent, si vous n'avez pas d'opérateur de décalage binaire (ce qui est commun dans la plupart, sinon toutes les langues), multiplie par 2^n pour shift gauche, et divisant par 2^n pour shift droit.

Dans l'exemple, vous pouvez voir que: 5 * 2^2 = 5 * 4 = 20.

Questions connexes