क्या मैं सही हूं कि दोनों छोटे पूर्णांक में इस 4 बिट पूर्णांक के 2 कम से कम महत्वपूर्ण बाइट होंगे?
हां, परिभाषा के अनुसार।
बड़े और छोटे के बीच का अंतर यह है कि कम से कम महत्वपूर्ण बाइट निम्नतम पते पर है या नहीं। थोड़ा एंडियन प्रोसेसर पर, सबसे कम पते कम से कम महत्वपूर्ण बिट्स हैं, x86 इस तरह से करता है।
इन छोटी ई
short s = (short)i;
short s = *(short*)&i;
पर एक ही परिणाम दे एक बड़ा endian प्रोसेसर में, सर्वोच्च पतों कम से कम महत्वपूर्ण बिट, 68000 और पावर पीसी यह इस तरह से कर रहे हैं (वास्तव में पावर पीसी दोनों हो सकता है , एप्पल से लेकिन पीपीसी मशीनों का उपयोग bigE)
ये बड़े ई पर एक ही परिणाम दे
short s = (short)i;
short s = ((short*)&i)[1]; // (assuming i is 4 byte int)
तो, जैसा कि आप देख सकते हैं, थोड़ा endian आप एल ई ऐज़ पर प्राप्त करने के लिए अनुमति देता है एक ऑपरेंड के महत्वपूर्ण बिट्स को यह ज्ञात किए बिना कितना बड़ा है। पिछड़े ई को पिछड़े संगतता को संरक्षित करने के फायदे हैं।
तो बड़े एंडियन का क्या फायदा है? यह हेक्स डंप बनाता है जो पढ़ने में आसान है।
वास्तव में, मोटोरोला के इंजीनियरों ने सोचा कि हेक्स डंप पढ़ने का बोझ आसान पिछड़ा संगतता से अधिक महत्वपूर्ण था। इंटेल के इंजीनियरों ने विपरीत माना।
स्रोत
2010-02-11 21:30:06
मैं गणित का उपयोग प्रतिलिपि बनाने से पहले उचित श्रेणी (आकार) को कम करने के लिए करता हूं। कंपाइलर्स एंडियननेस बनाए रखेंगे ताकि आपको कई चिंताएं न हों। चर के हिस्सों की प्रतिलिपि बनाने के परिणामस्वरूप एंडियननेस चिंताओं के परिणामस्वरूप आप सामने आए हैं। –