2
私はポートにJavaScriptにPythonライブラリをしようとしたが、両者の間の数値の差につまずいていますPythonのではビット単位のシフト精度
、1057618395136 >> 16 == JavaScriptで16137976 、1057618395136 >> 16 == 16120
私はJavascriptの整数精度を53ビット、Math.pow(2、53)== 9007199254740991であると読んでいます。これはまだbifshift操作の範囲にあります。私は行方不明ですか?
ありがとうございます! 好奇心から(私はそのような極小最適化が無視できることを知っています)、ビットシフトと除算の間にパフォーマンスに違いがありますか? – Martijnh
@Martijnh JavaScriptランタイムは、2のべき乗の定数で除算しているという事実を認識している可能性があります。ローエンドの電話を除いて、ほとんどの現代のハードウェアはおそらく64ビットのシフト演算を行うことができます。どのような実際の実装であれ、私は分かりません。 – Pointy