السلام عليكم
عندي هالكود الصغير حابة استفسر عن طريقة عمله
MOV AH, 01h INT 21h INC AL MOV AH, 0Eh INT 10h
السلام عليكم
عندي هالكود الصغير حابة استفسر عن طريقة عمله
MOV AH, 01h INT 21h INC AL MOV AH, 0Eh INT 10h
MOV AH, 01h
هذه التعليمة تقوم باعطاء المسجل AH القيمة 01h
INT 21h
ويقوم باستدعاء امر افتراضي (غالبا ما تكون مبرمجة ضمن البيوس) وهو يقوم باستدعاء 21h وهى تابعة للبيوس ويمكنك دراسة المقاطعات لمعرفة المزيد
INC AL
اما هذه التعلمية
هذه لتزويد قيمة مسجل (REGISTER=REGISTER+1)
فتزيد هنا قيمة المسجل AL بمقادر 1
MOV AH, 0Eh
تقوم باعطاء المسجل AH القيمة 0Eh
INT 10h
استدعاء 10h من البيوس
مع تحياتى لكى
GoodBye
MohamedIBrahim كتب:MOV AH, 01h
هذه التعليمة تقوم باعطاء المسجل AH القيمة 01h
INT 21h
ويقوم باستدعاء امر افتراضي (غالبا ما تكون مبرمجة ضمن البيوس) وهو يقوم باستدعاء 21h وهى تابعة للبيوس ويمكنك دراسة المقاطعات لمعرفة المزيد
INC AL
اما هذه التعلمية
هذه لتزويد قيمة مسجل (REGISTER=REGISTER+1)
فتزيد هنا قيمة المسجل AL بمقادر 1
MOV AH, 0Eh
تقوم باعطاء المسجل AH القيمة 0Eh
INT 10h
استدعاء 10h من البيوس
مع تحياتى لكى
اشكر حضرتك للاجابة والتفاعل
استفسار أخر
كيف سيكون الخرج في حال قمنا بادخال حرف A
هند العرب كتب:اشكر حضرتك للاجابة والتفاعل
استفسار أخر
كيف سيكون الخرج في حال قمنا بادخال حرف A
وضحى اكثر ماذا تقصدين
GoodBye
MohamedIBrahim كتب:وضحى اكثر ماذا تقصدين
أشكرك للرد
اقصد بسؤالي ماهو الخرج الذي نحصل عليه عند تنفيذ البرنامج في حال قمنا بادخل المحرف "A" عند التنفيذ :)
شكرا
هند العرب كتب:أشكرك للرد
اقصد بسؤالي ماهو الخرج الذي نحصل عليه عند تنفيذ البرنامج في حال قمنا بادخل المحرف "A" عند التنفيذ :)
شكرا
هل يسمح هذا البرنامج للمستخدم بادخال محرف عند التنفيذ
هند العرب كتب:هل يسمح هذا البرنامج للمستخدم بادخال محرف عند التنفيذ
بالطبع لا
فهذا مجرد مثال تعليمى وعند تنفيذه لن يحدث شئ فعليا لان النظام سيتدخل
GoodBye
هند العرب كتب:السلام عليكم
عندي هالكود الصغير حابة استفسر عن طريقة عمله
MOV AH, 01h INT 21h INC AL MOV AH, 0Eh INT 10h
للمقدرة على التفسير علينا قراءة INT اولا وفي حالنك INT21 هي INT 21h / AH=01h - read character from standard input, with echo, result is stored in AL.
لنفرض انك ادخلت "1" فان AX التي هي عبارة عن
AH AL
01 31
INC AL نعني اضافة 1 الى قيمة AL و حفظ النتيجة في AL. يعني : AL = AL + 1 يعني AL = 31 + 1 = 32
INT10h مع 0EH تستعمل ل INT 10h / AH = 0Eh - teletype output. :اي طباعة
AL = character to write.
AL = 32 يعني dec = 50 يعني "2"
طبع 2 على الشاشة
اذا ادخلت "A" ستكون النتيجة "B" على الشاشة
the 31 is the hex value of "1" which equal to 49 in decimal
تم تعديل هذه المشاركة بواسطة سمير ابراهيم في 3 مايو 2011 في 13:47