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

int تبع الاسمبلي ... هل هو حكر على الدوس؟

مغلق
بدأه إسماعيل ابراهيم في 2 نوفمبر 2002 · 11 رد · 1,307 مشاهدة · في لغة Assembly لأنظمة 16, 32, 64 بت
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

في تعريف الامر int أنه لتشغيل إجراءات (الدوس) حسب الرقم

فمثلا int 20 يقوم بتشغيل إجراء (دوس) المسؤول عن طباعة

قيمة رقم ...............

المهم , هل هذا يعني أن هذا الامر لن يعمل في نظام تشغيل مثل unix ,Linux ....الخ؟

(f)

#2

السلام عليكم ,,,

أخي إسماعيل الامر int الموجود في الاسمبلي إختصار

للكلمة Intrrupet إي مقاطعه و هي فعلياً تسمى Trap

في مصطلحات نظم التشغيل.

المهم:

كل جهاز له مجموعة من الـ Intrruptes مبنية

بداخله أي له أرقام معلومه و كل نظام تشغيل

أيضاً يقرر له مجموعه من هذه الانتربتس و يعطيها

ارقام, يعني باللنكس ممكن يكون نفس الشي

و ممكن لا لأني الصراحة ما جربت :(

و لكن بالتأكيد هناك أوامر ستعمل هنا و هناك

طبعاً راح تقول شو يريد هذا إذا ما جاوب عن شي

بس حسيت إن راح يمر عليك الدهر هنا و ما احد راح يجاوب

:D و قلت ممكن يفيد كلامي ولو شيئ قليل :)

مع تحياتي ,,, أخوك / طلال.

#3

شكرا طلال..

بالعكس كلامك دائما مفيد , وكثير..

فهمت من كلامك أنه int 20 ممكن تكون في لينكس مثلا int 9F ....??? بما معناه أنه int بتشغل شيء في نظام التشغيل بس شو هالشيء بيتعلق بنظام التشغيل

صحيح؟؟

والف شكر (f) أخي طلال.

#4

السلام عليكم ,,,

بالضبط هذا ما قصدته أخي :)

يعني هناك int تكون معرفة في نفس بناء الجهاز أي أن

كل أجهزة IBM مثلاً تكون لها مجموعة من الـ int تعمل

على كل هذه الاجهزه و Mac لها أيضاً مجموعة تعمل

على أجهزتها و هكذا ...

و هذا هو المستوى الأول من الـ int اما المستوى الثاني

فهو على مستوى نظام التشغيل أي أن كل نظام يقرر

له مجموعة من الـ int يعني لينكس لها مجموعة و وندوز

لها مجموعة يمكن أن تتشابه في أجزاء و تحتلف في أجزاء.

أما المستوى الثالث هي الـ int المعرفة من قبل المستخدم

و هذه تعتم على برنامجك :)

أخي إسماعيل هل كلامي كثير ؟ :D

اقتباس
 

بالعكس كلامك دائما مفيد , وكثير..  

مع تحياتي ,,, أخوك / طلال. (f)

#5

ههههه :D :D :D :D

آسف أنك فهمتني هيك .. أنا قصدي أنه كلامك مفيد وليس مفيد فقط بل مفيد كثيرا..

وكان هذا ردا على قولك :

________________________________

"و قلت ممكن يفيد كلامي ولو شيئ قليل"

________________________________

فقلت أنه مفيد كثيرا وليس قليلا :) يعني كلمة "كثير" تعود الى مفيد وليس الى "كلام".:D

ارجو انك فهمتني :)

------------------------------------------------

ألف شكر على المعلومات القيمة.. تحياتي (f)

#6

السلام عليكم ,,,

لا كنت فاهمك أخي إسماعيل بس حبيت أمزح معاك شوي

:D يعني نكسر جو الوحده الموجود هنا في القسم :D

مع تحياتي ,,,

#7

:D :D :D :D :D :D :D

#8

int 0 divide error

int 1 single step

int 2 non-maskable interrupt

int 3 break point

int 4 overflow

int 5 -->31 reserved by intel

int 32 -->255 user defined

الكلام ده اللي درسناه عن المعالج8086 يعني المقاطع بتاع الدوس لازم هايتغير لو هاتشتغل علي اللينكس

#9

السلام عليكم

بالنسبة لمايكروسوفت، ألغت دوال استدعاء المقاطعات مباشرة من مكتبة Win32 بداء من Win95 ، وتحتكرها للنظام نفسه ...

ولكن يمكن استدعاء القليل جدا من خلال دوال IOCtl ..

ويمكن استدعاء بعضها من خلال الدالة غير الموثقة VxDCall0 في نظم ما قبل W2k/XP .... ( فيروسات مثل تشيرنوبل :D )

وأيضا يمكن استدعاء المقاطعات في كل الإصدارات في طور Kernel من خلال المشغلات ...

#10

السلام

نسيت ان اقول الأهم :D ، استدعاء المقاطعات ليست حكرا لدوس، ولكن بما ان دوس ليست بيئة تعدد المهام فكان اي برنامج شغال من الممكن استدعاء المقاطعات ولا يؤثر في شيء، لكن في بيئة نظم تشغيل حديثة متعددة المهام مثل ويندوز ولينكس السماح باستخدامها مباشرة للبرامج العادية قد تسبب مشاكل ولذلك تحتكرها النظام وتتم إدارته من خلال المشغلات الافتراضية لمن أراد استخدامها، فهي تعزل وتحتكر الاستدعاءات منخفضة المستوي ، والاستدعاءات المتعلقة بالعتاد في في طبقة النواة ....

#11

هذا اقدم موضوع في هذا القسم ؟

للرفع، لاسباب تاريخية...

d4baa0.gif
#12

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

شكرا على جهودك أخ محمد عبد العليم

بس ممكن تشرح ماذا تقصد بالأسباب التاريخية وما القصد من رفعه؟!.

هذا الموضوع مغلق.

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