Verilogでの算術シフト
シフトは
a = b >> c;
でいいのだが
wire [7:0] a,b,c; b = 8'hff; c = 8'h01; a = b >> c;
とすると、aは7fになる
これをffにしたいときは
a = b >>> c;
とするだけでいい
今までなんでわざわざ符号拡張するコードを書いていたのか
シフトは
a = b >> c;
でいいのだが
wire [7:0] a,b,c; b = 8'hff; c = 8'h01; a = b >> c;
とすると、aは7fになる
これをffにしたいときは
a = b >>> c;
とするだけでいい
今までなんでわざわざ符号拡張するコードを書いていたのか