معمارية x86-64
جزء من قسم الأساسيات في رحلة Assembly على Coddy — الدرس 6 من 45.
إن المعمارية هي تصميم وحدة المعالجة المركزية (CPU). تمتلك وحدات المعالجة المركزية المختلفة بنيات معمارية مختلفة، تماماً كما تمتلك السيارات المختلفة تصاميم محركات مختلفة.
في هذه الدورة، ستتعلم x86-64 — وهي المعمارية المستخدمة في معظم أجهزة الكمبيوتر المكتبية، والمحمولة، والخوادم.
لماذا يسمى x86-64؟
| الجزء | المعنى |
|---|---|
| x86 | اسم العائلة (من Intel 8086، 80286، 80386، 80486...) |
| 64 | حجم السجل (64 بت) |
أسماء أخرى لنفس الشيء:
- x86-64
- x64
- AMD64
- Intel 64
جميعها تعني نفس البنية التي تتعلمها.
ماذا يعني 64 بت؟
- يمكن لكل مسجل (register) استيعاب 64 بت من البيانات
- يمكن لوحدة المعالجة المركزية (CPU) معالجة 64 بت في المرة الواحدة
- عناوين الذاكرة تأتي بعرض 64 بت
تستخدم البنى المختلفة أسماء سجلات مختلفة:
| البنية | أسماء السجلات |
|---|---|
| x86-64 (هذه الدورة) | rax, rbx, rcx, rdx, rsi, rdi |
| ARM (الهواتف، الأجهزة اللوحية) | x0, x1, x2, x3... |
| RISC-V (مفتوح المصدر) | a0, a1, a2, a3... |
تبدو نفس التعليمة (وضع 5 في سجل) مختلفة في كل بنية:
| البنية | الشيفرة البرمجية |
|---|---|
| x86-64 | mov rax, 5 |
| ARM | mov x0, #5 |
| RISC-V | li a0, 5 |
هام: المفاهيم التي تتعلمها (المسجلات، الذاكرة، التعليمات) تنطبق على جميع البنى المعمارية. تتغير الأسماء وبناء الجملة فقط.
جرّب بنفسك
لا يتضمّن هذا الدرس تحدّيًا برمجيًا.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
2أنظمة العد
لماذا النظام الثنائي؟الأعداد الثنائيةمن العشري إلى الثنائيلماذا النظام الست عشري؟من الست عشري إلى العشريمن العشري إلى الست عشريASCII والست عشري5استدعاء النظام Exit Syscall
ما هو الـ Syscall؟استدعاء النظام Exit Syscall (60)رموز الخروج (Exit Codes)ملخص: الخروج النظيف (Clean Exit)