Averaging in assembly using floating point values - Programmers Heaven

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.

Averaging in assembly using floating point values

I have to get average of 6 grades. Somehow I getting a wrong answer

Here's how I'm passing my values in C++. Since it's an assignment I can't change my C++ code.

extern "C" double Average (long [6]);

and then my assembly procedure looks like this:

_Average proc

mov ecx, 6 ; number of elements
mov ebx, [esp + 4] ; address of the array

fld REAL4 PTR [ebx] ; get elements of array
add ebx, 4

loop L1
fdiv DWORD PTR [esp + 4]



_Average endp

Sign In or Register to comment.