[解決済み] 論理右シフト、算術右シフト、右回転の違いについて
2022-03-13 05:19:35
質問
ハッカーの愉しみ」を読んでいるのですが、論理右シフト、算術右シフト、右回転の違いがわからなくて困っています。簡単すぎる質問かもしれませんが、ご容赦ください。
解決方法は?
まず、機械語の大きさは一定であることを思い出してください。例えば4で、入力は以下の通りです。
+---+---+---+---+
| a | b | c | d |
+---+---+---+---+
そして、すべてを1つ左の位置に押し出すと、次のようになります。
+---+---+---+---+
| b | c | d | X |
+---+---+---+---+
質問 Xとして何を入れるか?
- を付けて シフト 0を入れる
-
と
回転させる
置く
a
今度は、すべてを1つ右の位置に押して与えてください。
+---+---+---+---+
| X | a | b | c |
+---+---+---+---+
質問 Xとして何を入れるか?
- を付けて 論理シフト 0を入れる
-
を付けて
算術シフト
置く
a
-
と
回転させる
置く
d
大まかには
論理シフト は、(左シフト)2の乗算、(右シフト)2の整数の除算に相当する。
算術シフト は、符号付き数値の2の補数表現に関連するものです。この表現では、符号は左端のビットであり、算術シフトによって符号が保持されます(これを符号拡張と呼びます)。
回転させる は、通常の数学的意味を持たず、コンピュータでもほとんど使われない演算である。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン