الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال عن آلية عمل المقاطعات

بدأه HIGER في 14 ديسمبر 2010 · 6 رد · 1,097 مشاهدة · في أرشيف قسم الـــ Assembly
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

أود أن أسئل على أمر حيرني ووقع حاجزا أمام فهم بقية الامور

المهم سؤالي هو عن طريقة عرض عنواين المقاطعة

سأعطي مثالا عن طلبي :

مثالي عن مقاطعة INT 18h كيف يتم عرض محتوياتها بطريقة أخرى كيف يتم عرض العنواين بداخلها ؟

+

ماهي آلية عمل الإزاحة ولماذا تستخدم بين المقاطعات ؟

أرجوا الإجابة عن الاسئلة بالتفصيل لأنني اريد أن ابني معلوماتي على قواعد صحيحة

شكرا لكم :)

#2

ما أردت أن أفهمه هو في مثالنا :

مقاطعة خدمات ذاكرة ROM هي INT 18 وتكون 0000:0060

كيف لي أن استخرج عناوين خدماته من داخل المقاطعة ؟

أم هذا غير ممكن وبالتالي ففهمي من الاساس خطأ !!؟؟

#3

من قال ان "مقاطعة خدمات ذاكرة ROM هي INT 18" ؟

ما اعرفه (متأكد منه) ان int 18 خاصة بالـboot failure ، وهي عبارة عن عنوان لروتين يتم استدعاؤه عند فشل عملية الاقلاع سواء عن طريق الـbios اثناء استدعاء المقاطعة 19 او عن طريق الـOS نفسه .

يمكن للـOS ان يقوم بتغيير هذا العنوان الى روتين خاص به كي يتم استدعاؤه اذا حدث الـboot failure لاحقاً .

العناوين في 16bit تكون على هيئة segment:offset ، الآن ما الذي تريد ان تستخرجه من عنوان int 18 ؟

mov eax, dword ptr ds:[0xffdf0308]

jmp dword ptr [eax+0xfc]

#4

أنا أنستد على هذا :

/index.php?showtopic=48912

كمعلومات أرتكز عليها لفهم آلية العمل

أنا أريد أن أستخرج ما يحتويه بالكامل أريد أن أعلم عن طريقة عرض ما تحتويه المقاطة بالكامل

وشكرا :)

#5

هل من مجيب ؟

#6
اقتباس
أنا أريد أن أستخرج ما يحتويه بالكامل أريد أن أعلم عن طريقة عرض ما تحتويه المقاطة بالكامل

السؤال مازال غير مفهوم لي على الأقل !

هل تريد عمل dump لعنوان المقاطعة ؟

mov eax, dword ptr ds:[0xffdf0308]

jmp dword ptr [eax+0xfc]

#7

شكرا لكم لقد إتضحت كل شيئ بالنسبة لي :)

تم تعديل هذه المشاركة بواسطة HIGER في 21 ديسمبر 2010 في 16:31

مواضيع مشابهة