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

[تنبيه - عنوان غير مناسب : ]ارجو المساعدة الله يجزاكم الخير

مغلق
بدأه هموس في 26 مايو 2007 · 7 رد · 823 مشاهدة · في أرشيف قسم الـــ Assembly
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

ممكن المساعدة في هذا الكود

الكود يختص بحساب المضروب للعدد 5 لكن لما اتتبع نتائجه في بيئة masm611 الاقي النتيجة النهائية خاطئة مع ان البرنامج مايظهر فيه أي خطأ وحاولت باكثر من طريقه

اتمنى المسااعدة في اقرب فرصة ممكنه للحاجه الماسة له

 .MODEL SMALL
 .STACK 64
 .DATA
DATA_IN DB 5H,4H,3H,2H,1H,1H
 ORG 10H
FACT DW ?
 .CODE
MAIN PROC FAR
 MOV AX,@DATA
 MOV DS,AX
 MOV DI,OFFSET DATA_IN
 MOV CX,6H
 MOV AL,00h
 MOV AL,01h
NEXT: MOV BL,[DI]
 MUL BL 
 INC DI
 DEC CX
 JNZ NEXT
 MOV FACT,AX
 MOV AH,4CH
 INT 21H
MAIN ENDP
 END MAIN

تم تعديل هذه المشاركة بواسطة Xacker في 26 مايو 2007 في 19:21

#2
 ORG 10H

هل هذا خطأ مطبعي؟ يجب ان يكون 100h

وما هي النتيجة النهائية التي تقول بأنها تظهر لك لأني لا أرى مشكلة في الشفرة

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#3

العنوان غير مناسب

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

وفي حال التكرار سيتعرض موضوعك للإغلاق والحذف!!!

قواعد المشاركة

/index.php?showtopic=29343

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#4

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

النتيجة يكون مضرووب 5 =75 وهذا خطا طبعا

#5

هل تتبع عملية الضرب خطوة خطوة؟ وخصوصا ضمن الحلقة

أين تجد الناتج يصبح خطأ بأي حال طالما أنك تتبعه؟

هل أنت متأكد أنه 75 وليس 78؟

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#6

عفوا آسفة على الخطأ اقصد 78 وليس 75 تتبعت العملية خطوة خطوة في البداية تمام لكن يبدا يظهر نتيجة الضرب خطأ بعد ذلك

#7

ما توقعته بالضبط, عملية الضرب أخي تتم على القيم بصيغة ست عشرية, الناتج لديك ليس خطأ

78h = 120 وهو بالفعل الـ factorial من 5 لكن بصورة ست عشرية.

عليك ان تقوم فقط بتحويل هذه القيمة الى عشرية لو أردت طبعها على الشاشة, فقط لا غير.

السلام عليكم

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#8

شكراااا اخي الحمدالله اخيرا طلع الناتج صح

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…