算術シフト
読み:さんじゅつシフト
外語:arithmetic shift

 ビット演算の一種であるビットシフトの方法の一つで、単純にビット列をシフトすること。
目次

概要
 算術シフトは、2の補数形式の符号付き2進数を扱うビットシフトである。最上位ビットは常に符号ビットとなっている。
 左シフトでは、あふれたビットは単に消える。プロセッサーによっては、その内容をキャリーフラグ等に格納するものがある。
 右シフトでは、空いたビット(最上位ビット)には符号ビットと同じ内容が格納される。

特徴
 最上位ビットを符号に見立て、右にnビットシフトしたとき1/(1<<n)倍した数となるように、空いた最上位ビットに元の最上位ビットをコピーするシフト方式。
 左にシフトする場合は論理シフトと動作が変わらない。
 右に算術シフトすれば符号付きで1/2、左に算術シフトすれば符号付きで2倍となる。

再検索