aham, acho que você está confundindo “x << 3” com “x <<= 3”.
x << 3 é uma expressão, sem “efeito colateral”, ou seja, x não será alterado.
x <<= 3 é o equivalente de x = x << 3, ou seja, x << 3 é calculado, e então x é alterado (esse é o efeito colateral).
(Para certificação e outros quetais você deve saber que há algumas sutilezas, então x <<= 3 é quase equivalente mas não é exatamente a mesma coisa que x = x << 3, mas para o uso do dia a dia você pode considerar que é.)