うむむ、ビットシフトの動作も実装依存するのですか…
ビットシフトの落とし穴 – 算術シフトと論理シフト
確かにビットシフトの演算子は << か >> の2種類しかないわけで、算術シフトと論理シフトを使い分けることはできません。それはわかっていたのですが実装依存するとは知りませんでした。試しに C/C++ に影響されたとされる PHP で試してみましたところ算術シフトになりました。冷静に考えると PHP で unsigned な変数が作れないですね。
Contributions