The bit rotation is similar to the bit displacement process.
Only, in this case, you don’t "lose" the bits that extrapolate the dimension of your variable (the most significant or the least significant, depending on the direction of the rotation). These bits are repositioned at the opposite end. That is, the most significant becomes the least significant or the opposite, if the rotation is in the opposite direction. That one picture illustrates well.
For example:
Supposing valor
be it:
valor = 1; // 0001 usando 4 bits para exemplo.
If you rotate this value to the right:
O 1 foi para o início.
v
1000 // 1 vez
0100 // 2 vezes
0010 // 3 vezes
0001 // 4 vezes
If you rotate this value to the left:
0010 // 1 vez
0100 // 2 vezes
1000 // 3 vezes
This defers to the pure bit offset because, comparing to the right rotation in the first case, if you moved to the right once the result would be zero, because it would add a zero where 1 was.