شرح Endian الكبيرة "و" هندسة Endian طفيف

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

اضغط هنا لرابط المقالة باللغة الانجليزية102025
تمت أرشفة هذه المقالة. وتظهر "كما هي" ولن يتم تحديثها بعد الآن.
الموجز
عند تصميم أجهزة الكمبيوتر "، توجد مختلفة من ناحية جهازي مختلفة هندسة لمعالجة ذاكرة التخزين. تسمى الكبيرة Endian و طفيف Endian ثم الرجوع إلى الترتيب الذي يتم تخزين وحدات البايت في الذاكرة. تم تصميم حول هندسة Endian طفيف Windows NT و لم يتم تصميم ليصبح متوافقاً مع Endian كبيرة لأن معظم البرامج المكتوبة مع بعض تبعية على Endian طفيف.
معلومات أخرى
يتم اشتقاق هذه العبارات اثنين من "نهاية كبير في" ثم "قليلاً الانتهاء في." فإنها تشير إلى الطريقة التي يتم بها تخزين الذاكرة. على جهاز كمبيوتر Intel يتم تخزين نهاية صغيرة أولاً. وهذا يعني تخزين كلمة Hex مثل 0x1234 في الذاكرة كـ (0x34 0x12). يتم تخزين في صغيرة النهاية أو الطرف السفلي أولاً. ونفس الشيء صحيح قيمة من بايت أربعة; على سبيل المثال، هل يمكن تخزين 0x12345678 كـ (0x78 0x56 0x34 0x12). "إنهاء كبير في" بذلك بشكل عكسي بحيث 0x1234 هل يمكن تخزين (0x12 0x34) في الذاكرة. هذا هو الأسلوب المستخدم من قبل أجهزة الكمبيوتر Motorola كما يمكن أيضاً استخدام على أجهزة الكمبيوتر التي تعمل بنظام RISC. أجهزة الكمبيوتر المستندة إلى RISC MIPS وأجهزة Alpha DEC قابلة للتكوين Endian الكبيرة أو Endian طفيف. يعمل Windows NT فقط في وضع Endian طفيف على كل من جهازي الكمبيوتر.

تم تصميم Windows NT حول هندسة Endian طفيف. تتم كتابة طبقة تجريد الأجهزة (HAL) بحيث تتم معالجة كافة المشاكل المتعلقة إلى نظام التشغيل تلقائياً. لذلك، من الممكن إنشاء HAL التي قد تعمل على هندسة Endian الكبيرة. يحتوي مشكلة الأساسي مع ترقية التعليمة البرمجية على تنفيذها بواسطة طريقة كتابة التعليمات البرمجية لكافة البرامج. غالباً ما يتم كتابة التعليمات البرمجية بافتراض أنه يتم استخدام Endian الكبيرة أو Endian طفيف. قد لا يكون هذا محدد HAL; قد تكون شيء بسيطاً مثل تقنيع بت رسومات. لتوضيح هذا المفهوم أكثر اتبع المثالان برمجة.

مثال 1

   struct   {      WORD y;      WORD x;   } POS;   lparam = (DWORD) POS;				
بشكل أساسي, يتم افتراض في التعليمات البرمجية التي طفيف Endian قيد الاستخدام. يتم الآن افتراض التبديل وحدات البايت في بنية 'C'. هذا هو أسرع بنية Intel ولكن لن تعمل مع Endian الكبيرة.

مثال 2

مثال آخر يتم ممارسة شائعة باستخدام أقنعة بت. التالي مثال تعريف قناع بت:
   #define BITMASK    0x0008				
هذا يسمح لك تحقق مما إذا كان البت الرابع إذا 1 تقوم AND به رقم آخر. كما يسمح لك تعيين 4 بت بواسطة OR ing عليه مع قيمة أخرى. يأتي المشكلة متى قمت OR أو AND هذا مع DWORD (مزدوج Word) أو أي شيء آخر غير كلمة حجم قيمة. يؤدي هذا أشياء غريبة حدوث نتائج غير متوقعة. قد يجعل افتراضات حول كيفية عمل مع طفيف Endian حيث أنه لن يعمل بنفس الطريقة مع Endian الكبيرة. يتم بالفعل إنشاء كمية كبيرة من التعليمات البرمجية هذه افتراضات مضمنة.

لاحظ أن رقاقات PowerPC و Sparc أيضاً switchable بين طفيف Endian Endian الكبيرة. ومع ذلك، يتم دوماً تطبيق PowerMac Apple شريحة PowerPC في وضع Endian الكبيرة. ومن ثم قد المنفذ Windows NT PowerPC ولكن من المحتمل أن لا تطبيق PowerMac PowerPC.
التفاح uuh prodnt mips

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 102025 - آخر مراجعة: 12/04/2015 09:35:46 - المراجعة: 2.1

Microsoft Windows NT Advanced Server 3.1, Microsoft Windows NT Workstation 3.1, Microsoft Windows NT Advanced Server 3.1

  • kbnosurvey kbarchive kbmt kbhardware KB102025 KbMtar
تعليقات