Como os operadores de turno trabalham em Java? [duplicado]

Esta questão já tem uma resposta aqui:

O que são operadores bitwise shift (bit shift) e como eles funcionam? 8 respostas

Estou tentando entender os operadores de turno e não consegui muito. Quando tentei executar o código abaixo

System.out.println(Integer.toBinaryString(2 << 11));
System.out.println(Integer.toBinaryString(2 << 22));
System.out.println(Integer.toBinaryString(2 << 33));
System.out.println(Integer.toBinaryString(2 << 44));
System.out.println(Integer.toBinaryString(2 << 55));

Eu recebo o abaixo

1000000000000    
100000000000000000000000    
100    
10000000000000    
1000000000000000000000000    

Alguém poderia me explicar?

questionAnswers(9)

yourAnswerToTheQuestion