لغات البرمجة

x86-64: معمارية البرمجة بت 64

x86-64، المعروف أيضًا باسم x64، x86_64، AMD64 وIntel 64، هو الإصدار بت 64 من مجموعة تعليمات x86. يقدم x86-64 وضعين جديدين للتشغيل، وهما وضع 64 بت ووضع التوافق، جنبًا إلى جنب مع وضع جديد للتخطيط بأربعة مستويات. من خلال وضع 64 بت ووضع التخطيط الجديد، يدعم x86-64 كميات هائلة بشكل كبير من الذاكرة الظاهرية والذاكرة الفعلية مقارنة بما هو ممكن على الإصدارات بت 32 منه، مما يتيح للبرامج تخزين كميات أكبر من البيانات في الذاكرة. كما يوسع x86-64 أيضًا عدد السجلات العامة إلى 64 بت، ويوسع عددها من 8 (بعضها كان له وظائف محدودة أو ثابتة، على سبيل المثال لإدارة الستاك) إلى 16 (عامة تمامًا)، ويوفر تحسينات عديدة أخرى. تدعم العمليات العائمة من خلال تعليمات مشابهة لـ SSE2 وتُستخدم عمومًا سجلات نمط x87/MMX بشكل إجباري (ولكن لا تزال متاحة حتى في وضع 64 بت)؛ بدلاً من ذلك، يتم استخدام مجموعة من 32 سجل فيكتور، 128 بت لكل منها. في وضع 64 بت، يتم تعديل التعليمات لدعم عمليات العمليات 64 بت ووضع العنونة 64 بت. يسمح وضع التوافق بتشغيل تطبيقات المستخدم 16 و 32 بت دون تعديل تتوافق بجانب تطبيقات 64 بت إذا كان النظام التشغيلي 64 بت يدعمها. ونظرًا لأن مجموعات التعليمات x86 16 بت و 32 بت الكاملة ما زالت مُنفَذَة في الأجهزة دون أي تقليد وسيط، يمكن تشغيل هذه التطبيقات القديمة بدون أي أداء سلبي، في حين يمكن للتطبيقات الجديدة أو المعدلة الاستفادة من ميزات تصميم المعالج لتحقيق تحسينات في الأداء. علاوة على ذلك، يُشغل معالج يدعم x86-64 في وضع الواقع الحقيقي للحصول على التوافق التام مع الإصدارات السابقة. تم تنفيذ المواصفة الأصلية، التي أنشأتها AMD وأصدرت في عام 2000، من قبل AMD وIntel وVIA. كان معالج AMD K8 أول من نفذها. وكانت هذه الإضافة الأولى الهامة إلى معمارية x86 التي صممتها شركة غير إنتل. أُجبرت إنتل على اتباع الخطوة نفسها وقدمت عائلة NetBurst المعدلة التي تتوافق مع المواصفات الخاصة بـ AMD بالبرمجيات. قامت VIA Technologies بتقديم x86-64 في معمارية VIA Isaiah، مع VIA Nano. يختلف معمار x86-64 عن معمار إنتل Itanium (المعروف سابقًا بـ IA-64)، الذي لا يتوافق على مستوى مجموعة التعليمات الأصلية مع معمار x86. لا يمكن تشغيل أنظمة التشغيل والتطبيقات المكتوبة لأحدهما على الآخر. يمكنكم مزيد من المعلومات عن لغة البرمجة x86-64 عبر الرابط التالي في ويكيبيديا: x86-64 في ويكيبيديا.