السلام عليكم ورحمة الله وبركاته
أنا طالب في كلية الحاسوب في جامعة في الاردن
غداً لدي امتحان لمادة ( لغة اسمبلي)
طبعاً اللي ندرسه يعتبر تافه بالنسبة للمحترفين ولم ناخذ من هذه المادة سوى الاساسيات وليست البرمجه بمعنى الكلمة
على العموم اثناء دراستي واجهتني صعوبة في فهم نقطة
وهو " Overflow flag"
من دروس الاستاذ عفيف قرأت عن ((بعض الحالات التي تأخذ OF القيمة 1))
موجب (+) موجب = سالبة
سالب (+) سالب = موجبة
موجب (-) سالب = سالبة
سالب (-) موجب = موجبة
ولكن عندما جربت الكود التالي
mov al,0Ah
mov bl,5h
العدد الأول يعتبر سالب ( لانه msb يساوي 1)
العدد الثاني يعتبر موجب ( لانه msb يساوي 0)
عند تنفيذ الامر
sub al,bl
الناتج يكون
al =05h
والناتج عدد موجب
وعند مشاهدة الحالةالتي أشار اليها الاستاذ عفيف ان of تاخذ القيمة 1
سالب طرح(-) موجب = موجبة
عندما تتبعت البرنامج عن طريق الامر ( td)
debug
وجدت أن العلم of = 0 مع انه المفروض يكون 1
لذا شكك وخربط في فهمي
نتمنى من أحد الاخوة الافاضل توضيح ووضع جميع الحالات التي تاخذ فيها of القيمة 1
وتوضيح الخطأ اذا كنت واقع بالخطأ
------------------
نرجوا المساعدة ياخوان تراني داخل على الله ثم عليكم
عندي امتحان وأريد اجيب علامة طيبة ومابي اخبص :(
انتظر المشاركة

