Загрузка данных


#include <iostream>

using namespace std;

int main()
{
	static int numbers[90000];
	static int result[90000];

	int result1;

	for (int i = 0; i <= 90000; i++)
	{
		numbers[i] = i + 1;
	}
	_asm {

		mov ecx, 90000 // счетчик
			mov esi, OFFSET numbers // адрес numbers в esi
			mov edi, OFFSET result // адрес result в edi

		perebor_start :
			mov eax, [esi] // записали в eax значение esi
			imul eax, eax // int * int в большом регистре не даст переполнения
			


			mov[edi], eax // записали взятый элемент в edi(по адресу)

			add esi, 4
			add edi, 4

			dec ecx // декремент счетчика
			jnz perebor_start // jump if not zero в начало цикла
	}
	cout << "result[0] = " << result[0] << endl;         // 1
	cout << "result[89999] = " << result[89999] << endl; // 90000
	cin >> result1;
}