significado de (número) e (-número)

Qual é o significado de(number) & (-number)? Eu procurei, mas não consegui encontrar o significado

Eu quero usari & (-i) em loop como:

for (i = 0; i <= n; i += i & (-i))