עבור לתוכן

מעבד מתמטי שאלה

Featured Replies

פורסם

יש לי תוכנית בC שקוראת לפונקציה ב אסמבלי, מחשבת ממוצע בספרים במערך ומוצאת מינ ומקס.

יש לי בעיה שאחרי שחיברתי את כל המערך בעזרת המעבד המתמטי, הסכום יושב לי בST(0) ואני רוצה להכניס לו גם את גודל המערך שיושב ב BP+8, אבל אני לא מצליח משום מה.

זה הקטע קוד של החישוב ממוצע. אשמח אם מישהו יאיר את תשומת ליבי.

AVG:

MOV SI,[bP+6]

FLD DWORD PTR [sI]

MOV CX,[bP+8]

L1:

FLD DWORD PTR [sI+4]

FADD

ADD SI,4

CMP CX,2

JZ FINISH

LOOP L1

;------------------------------------------------

FINISH:

MOV di,[bP+8]

FiLD DWORD ptr di

fdiv

אני יודע שהפקודה FILD לא נכונה, השאלה איך אני מכניס את BP+8 ששם נמצא גודל המערך (10 לצורך העניין) לST

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים