11

intが 32 ビット システムでは 4 バイト、64 ビット システムでは 8 バイトであることを考えるとfloat、同じように扱われないのはなぜですか? 64 ビット システムで a のdoubleサイズが != a のサイズになるのはなぜですか? floatを宣言するときに最適なネイティブ整数型が選択されることを考えるとint(これによりパフォーマンスが向上します)、(パフォーマンスも向上します) についても同じことが起こるべきではありませんfloatか?

関連する質問: 32 ビット システムと64ビット システムで型を宣言するのは悪い考えですかmy_float(名前を許してください!) 。floatdouble

4

1 に答える 1

23

あなたの質問は誤った前提に基づいています。最近のほとんどの 64 ビット システムでintは、まだ 4 バイトです。このような大きな整数がほとんど必要とされないのに、なぜ 2 倍のメモリと 2 倍のメモリ帯域幅を消費するのでしょうか? 典型的な最新の 64 ビット システムでは、64 ビット整数の計算は 32 ビット整数の計算よりも高速ではないため、メリットはありません。

于 2012-09-04T01:11:19.077 に答える