Zingler » 25 май 2014, 01:39
Здравствуйте! Проблема такая: Задали задание, нужно написать программу, в которой главнй модуль находится в языке С или С++, а дополнительный модуль в языке Ассемблера. Программа обязательно должна состоять из 2 раздельный файлов, т.е Нельзя встроить код ассемблера в код С. Из главного модуля передаю количество элементов массива, и указатель на первый елемент массива. В ассемблере с помощью Сопроцессора нужно найти среднее арифметическое этих чисел и вернуть в функцию. Проблема заключается в том, что этот массив должен быть либо типа double либо float.
Код написаный на С++:
#include <iostream.h>
#define L 5
extern "C" float Srednia(float* tab, int G);
int main()
{
float tab[L]={0};
cout<<"Enter array: \n";
for(int i=0; i<L; i++)
cin>>tab;
cout<<"Average value of entered array = "<<Srednia(tab, L);
cout<<"\nThe end of the programm\n";
return 0;
}
Помогите, пожалуйста написать код на Ассемблере. Перепробовал многое, не один из моих вариантов не работает. Уже даже не знаю в какую сторону правильно копать. Буду очень благодарен.
Здравствуйте! Проблема такая: Задали задание, нужно написать программу, в которой главнй модуль находится в языке С или С++, а дополнительный модуль в языке Ассемблера. Программа обязательно должна состоять из 2 раздельный файлов, т.е Нельзя встроить код ассемблера в код С. Из главного модуля передаю количество элементов массива, и указатель на первый елемент массива. В ассемблере с помощью Сопроцессора нужно найти среднее арифметическое этих чисел и вернуть в функцию. Проблема заключается в том, что этот массив должен быть либо типа double либо float.
Код написаный на С++:
#include <iostream.h>
#define L 5
extern "C" float Srednia(float* tab, int G);
int main()
{
float tab[L]={0};
cout<<"Enter array: \n";
for(int i=0; i<L; i++)
cin>>tab[i];
cout<<"Average value of entered array = "<<Srednia(tab, L);
cout<<"\nThe end of the programm\n";
return 0;
}
Помогите, пожалуйста написать код на Ассемблере. Перепробовал многое, не один из моих вариантов не работает. Уже даже не знаю в какую сторону правильно копать. Буду очень благодарен.