Zeichen innerhalb der Eingabe verschieben C++

Hallo,

ich bin momentan daran, ein Programm zu schreiben,
welches eine Binärzahl einliest und diese im Gray-Code ausgibt.
Dazu habe ich mir überlegt,
dass das Programm den User nach einer Binärzahl fragen soll um diese dann mit Hilfe von XOR umzurechnen.
Den Weg grundsätzlich habe ich mir auch schon überlegt,
aber um die Zahl umrechnen zu können,
muss ich die Eingabe um eine Stelle nach rechts verschieben.
Also z.B.
1011 würde zu
0101 werden.
Habe schon alles mögliche durchgegooglet, aber leider nichts hilfreiches gefunden.
Weiß vielleicht hier jemand,
wie dies funktioniert?

Vielen Dank und liebe Grüße!