4

私はかなり新しいプログラマーですが、署名付き、署名なし、32ビットと64ビットの違いと使用法について、誰かが実用的な説明/例を教えてくれるかどうか疑問に思っていました。

つまり、昨年Twitterで開発者が64ビットに切り替えた方法についての記事を読みましたが、その理由と具体的な性質がわかりませんでした。

ありがとうございました!

4

1 に答える 1

3

n ビットの場合、それらのビットで表される 2^n の異なる数値を持つことができます。したがって、32 ビットの符号なし数値は 0 から 4,294,967,295 になります (2^32-1、-1 は 0 が有効な数値であるためです)。符号付きの数値は、その 40 億を正と負の間で均等に分割します。32 ビット コンピューターはメモリ アドレスでこれを使用します。つまり、プログラムは 4 GB のメモリにネイティブにアクセスできます。64 ビット コンピュータの制限は 2^64 で、これははるかに高い値です。

ユーザー、ツイート、特定の日付からの秒数など、他のものを表すために 32 ビットの数値を使用している場合も、40 億の制限に達します。したがって、32 ビットは特定のスケールまでは問題なく動作し、それを超えると、制限を回避する方法はありますが、64 ビットに移行する方が理にかなっています。

欠点は、数値を保存するために 2 倍のメモリが必要になることです。

于 2010-08-14T16:59:36.047 に答える