GodzilLe 05/11/2017 à 22:16
Il y a aussi une question d'intention.
Autant remplacer un *2 par un <<1 peux rendre le code moins lisible, autant la ce que Folco veux faire est clairement décaler des bits vers la gauche et ensuite faire un OR avec les dites valeurs. En gros il ne fait pas des maths mais de la manipulation de bits.
Autant 256, 65536 & co sont des valeurs simples et connue d'une majorité, mais
x * 512 tu pense immédiatement a un décalage de 9 bits vers la gauche?
La il ne fait pas des maths, et ne cherche pas a "optimiser" du code, c'est juste qu'il est plus logique d'utiliser un shift qu'une multiplication.