मुझे लगता है कि मैं x86 पर ध्यान केंद्रित कर रहा हूं, लेकिन मैं आम तौर पर 32 से 64 बिट की चाल में रुचि रखता हूं।
तार्किक रूप से, मैं देख सकता हूं कि कुछ मामलों में स्थिरांक और संकेत बड़े होंगे, इसलिए कार्यक्रम बड़े होने की संभावना है। और दक्षता के लिए शब्द सीमाओं पर स्मृति आवंटित करने की इच्छा का अर्थ होगा आवंटन के बीच अधिक सफेद-स्थान।
मैंने यह भी सुना है कि x86 पर 32 बिट मोड को अपने कैश को फ्लश करना पड़ता है जब संभव अतिव्यापी 4 जी एड्रेस स्पेस के कारण संदर्भ स्विच हो जाता है।
तो, 64 बिट के वास्तविक लाभ क्या हैं?
और पूरक प्रश्न के रूप में, क्या 128 बिट और भी बेहतर होगा?
संपादित करें:
मैंने सिर्फ अपना पहला 32/64 बिट प्रोग्राम लिखा है। यह 16 बाइट (32 बी संस्करण) या 32 बाइट (64 बी संस्करण) ऑब्जेक्ट्स से जुड़ी हुई सूचियाँ / पेड़ बनाता है और बहुत कुछ करने के लिए मुद्रण करता है - वास्तव में उपयोगी कार्यक्रम नहीं है, और कुछ विशिष्ट नहीं है, लेकिन यह मेरा पहला है।
आकार: 81128 (32 बी) वी 83672 (64 बी) - इतना अंतर नहीं
गति: 17 एस (32 बी) वी 24 एस (64 बी) - 32 बिट ओएस (ओएस-एक्स 10.5.8) पर चल रहा है
अपडेट करें:
मैं ध्यान देता हूं कि एक नया हाइब्रिड x32 ABI (एप्लिकेशन बाइनरी इंटरफ़ेस) विकसित किया जा रहा है जो कि 64b है लेकिन 32b पॉइंटर्स का उपयोग करता है। कुछ परीक्षणों के लिए इसका परिणाम छोटे कोड और 32 बी या 64 बी की तुलना में तेजी से निष्पादन है।