الحصول على عنوان بدء المكدس في برمجة التجميع

StackOverflow https://stackoverflow.com/questions/2356195

  •  23-09-2019
  •  | 
  •  

سؤال

هل من الممكن الحصول على عنوان البداية الفعال لمكدس بعد الانتهاء من عمليات المكدس مثل Push and Pop في برمجة التجميع؟

هل كانت مفيدة؟

المحلول

تتمثل الاتفاقية في حفظ (e) sp إلى (e) bp في بداية وظيفتك ، واستخدام (e) bp للعنوان المتغير المحلي.

نصائح أخرى

أبسط حالة هو مجرد حفظ مؤشر المكدس الأولي لبعض المتغيرات للوصول إليه عند الحاجة. إذا لم يكن الأمر كذلك ، فاستخدم واجهة برمجة تطبيقات معينة من النظام الأساسي ، على سبيل المثال VirtualQuery على Windows ، باستخدام قيمة SP الحالية كمعلمة أولى. سيكون العنوان الأساسي في حقل BaseadDress لهيكل Memory_Basic_Information. في Posix يمكن القيام بالمهمة باستخدام وظائف pthread

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top