Es ist aber ein Unterschied, ob Du ein Schieberegister bedienst, oder das auf lokale Variablen abbilden willst. Beim Schieberegister reicht einmal 0 und 63 mal 1 schieben, wenn die 0 überall durchgeschoben werden soll.

Nur zwischendrin wirst Du nicht viel übernehmen können, dazu müsstest Du Dein Schieberegister erst wieder auslesen. Also alles wieder rausschieben, nicht sehr effizient.

Solltest Du dagegen den Zustand auf 8 Bytes abbilden wollen, so würde es am einfachsten in Maschinensprache, also ASM Code gehen, die Sprache solltest Du dafür aber sinnvollerweise können.

Einen unkomplizierten Befehl um 8 Bytes direkt in Basic zu rotieren gibt's nicht. Wenn's denn Basic bleiben muss, kannst Du den aus 2 Rotate Befehlen, mit einem bisserl Code zusammenbauen. Unsauberer als die ASM Lösung, aber klappen tät's sicher.