Napisać w asemblerze NASM funkcję suma, która:
może być wywoływana z języka C;
pobiera jeden argument n typu int;
zwraca wartość typu int;
gdy n jest z przedziału od 1 do 1000000, to oblicza wartość sumy:
dla innych n robi cokolwiek;
zachowuje po powrocie wartości rejestrów ebx, edi,
esi, ebp, esp sprzed jej wywołania;
jest zakodowana za pomocą co najwyżej 24 instrukcji procesora;
nie używa arytmetyki zmiennopozycyjnej;
nie jest stablicowana.
Napisać w języku C program testujący, który
wywołuje funkcję suma w pętli kolejno dla zadanego przedziału argumentów
i wypisuje wartości zwrócone przez tę funkcję.
Za implementację zawierającą co najwyżej 12 instrukcji była dodatkowa premia.