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

سؤال عن المقاطعة 21h‏ هل تعمل بدون وندوز

بدأه Hisawa++ في 25 مارس 2014 · 3 رد · 970 مشاهدة · في لغة Assembly لأنظمة 16, 32, 64 بت
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ، بداية أشيد بهذا الموقع الجميل و بالأخوة المشرفين والأعضاء النشيطين ولهم في الرد

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

int 21h

كما قرأت أنها خاصة بنظام دوس هل هذا يعني أنه لا يمكن استخدامها في نظام غير وندوز ؟

إذا كانت الإجابة نعم ، فهل يوجد لها بديل ؟ لأني أرى أنها المقاطعة الأساسية في التعامل مع الإدخال (من الكيبورد) والإخراج في (الشاشة) .

أرجو أن يكون سؤالي واضحا .

‎لا تيأسن إذا كبوتم مرة ** إن النجاح حليف كل مثابر‎

 

Import AnyCodeYouLearned Project = findNewProjecthasProject = Truewhile (!dead&&hasProject) { codeingisDone = try_Codeif (isDone)  Project = findNewProjectelse learn_code
#2

المقاطعة 21h خاصة بنظام دوس وليست مستخدمة في ويندوز، في ويندوز يمكنك استخدام واجهته البرمجية win32api، اطلع على هذا  الرد (سؤال : كيف يمكن كتابة برنامج بدون المكتبات القياسية ؟

 

الهدف من تعلم الأسمبلي ليس الإدخال والإخراج، هذه وظائف يقدمها نظام التشغيل، الهدف منها تعلم برمجة المعالج وفهم برامج الأسمبلي، طالما أنك في ويندوز 32 بت، هناك مكتبة  جميلة اسمها irvine32 توفر وظائف للإدخال والأخراج تريحك من هذه المسألة.

 

تجدها هنا:

Irvine32.asm

Irvine32.inc

Irvine32.lib

 

هذا (01-setup-prog-env.pdf) شرح إعدادها مع masm32

تم تعديل هذه المشاركة بواسطة Mr.B في 25 مارس 2014 في 03:02

1
#4

مشكورين على الرد أخ

@Mr.B

و الأخ

@C++er

‎لا تيأسن إذا كبوتم مرة ** إن النجاح حليف كل مثابر‎

 

Import AnyCodeYouLearned Project = findNewProjecthasProject = Truewhile (!dead&&hasProject) { codeingisDone = try_Codeif (isDone)  Project = findNewProjectelse learn_code

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