2010-08-14 66 views
3

我是一個相當新的程序員,我想知道是否有人可以給我一個實際的解釋/例子,介紹使用帶符號,無符號和32位之間的差異和用法vs 64位?32位無符號,有符號,64位差異的實際例子

即我讀了一篇關於Twitter如何讓開發人員去年轉向64位的文章,但我不確定推理和它的具體性質。

謝謝!

回答

2

對於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位更有意義。

缺點是需要兩倍的內存來存儲你的號碼。

相關問題