シフト演算の一種で、シフトによってあふれたビットが、シフトによって空いた部分に入るという動作になるもののことです。
ビット列を左方向へシフトするのなら、左端からビットがあふれ、右端のビットに空きができます。右方向へのシフトならその反対で、右端からあふれが起こり、左端に空きができます。ビット列全体が循環しているように考えて、あふれたビットを反対側から登場させるのがローテートの考え方です。
たとえば、元のビット列が 11000111
だとして、左方向に
3ビットだけローテートすると 00111110
になります。右方向に
3ビットだけローテートすると 11111000
になります。
Programming Place Plus のトップページへ
はてなブックマーク に保存 | Pocket に保存 | Facebook でシェア |
X で ポスト/フォロー | LINE で送る | noteで書く |
RSS | 管理者情報 | プライバシーポリシー |