حين تفتح ملفاً تنفيذياً في الـ Disassembler لا ترى structs ولا arrays ولا أسماء متغيّرات — ترى عناوين ذاكرة و registers ونقل بايتات. هذا المقال يعلّمك كيف تستدلّ على البُنى الأصلية من طريقة وصول الكود إلى البايتات: الـ stride الموحّد يكشف المصفوفة، واختلاف الأحجام عند offsets ثابتة يكشف الـ struct.
الـ switch في الكود المصدري نيّة لا تنفيذ: الكومبايلر حرّ في كيف يحقّقها — سلسلة مقارنات، أو شجرة بحث، أو jump table — والشكل ينقلب بتغيّر مستوى التحسين وحده. هذا المقال يقرأ هذه الأشكال في الـ Assembly ويعيد بناء الـ switch منها.
نستخدم كوكيز ضرورية لتشغيل الموقع وحمايته: تسجيل الدخول، والحماية، وعرض حسابك، ورصد الأعطال البرمجية، ويقيس مزوّد الشبكة سرعة الصفحات. ومع موافقتك فقط: نعدّ الزيارات وبعض الخطوات عدّاً مجهول الهوية. لا إعلانات. التفاصيل