/アーパレイタ/
名詞 /アリすマティク/
形容詞 /アリすメティク/
p.226
シフト演算子
表9.1で見たようにシフト演算子には論理(logical)シフトと算術(arithmetic)シフトとがあります。シフト演算子には下の6つがあります。
sll
: 論理左シフトsrl
: 論理右シフトsla
: 算術左シフト(普通に論理左シフトして、何ビットシフトしようが空いたビットには全部元のLSBがコピーされる)sra
: 算術右シフト(普通に論理右シフトして、何ビットシフトしようが空いたビットには全部元のMSBがコピーされる)rol
: 左回転ror
: 右回転
(略)
コード例:
x(5 downto 0) <= "100110"; y <= x sll 2; -- 構文: 被シフトビット列 シフト演算子 シフト量 y <= x ror -2; -- シフト量は負数も指定できる。