Bardzo proszę o pomoc bo niestety nie mam pomysłu jak napisać przynajmniej jednen taki program w Assemblerze!
Program ma zliczyc i wydrukowac w oknie terminala (funkcja printf):
#zad.1
- sume wszystkich elementow tablicy
zad.2
- dodatkowo - liczbe elementow tablicy o wartosciach mniejszych od 0
zad.3 wydrukowanie tekstu "Imie nazwisko nr_albumu",
przy czym nr_albumu ma stanowic wartosc zmiennej
#################################################################
.data
text_a: .string "Suma = %d, elementow <0 = %d\n"
tab: .long 6, 4, -3, 3, -5, 9, 7, 1, -2, 8, -3, 5, 9, -1, 2
count: .long 15
sum: .long 0
negcnt: .long 0
text_b: .string "Imie nazwisko nr %d\n"
number: .long 12345
#################################################################
.text
.global main
main:
nadaj wartosci poczatkowe sumie i licznikom
dane mozna przechowywac gdziekolwiek (w rejestrach, w pamieci)
petla:
usun bledy i odczytaj w prawidlowy sposob element tablicy
mov tablica(,%rejestr,2) , %ax
zaktualizuj sum�
sprawdz czy wartosc jest ujemna
zaktualizuj liczniki
zamknij petle
koniec:
przekaz argumenty
wyswietl wyniki (printf)
call printf
koniec funkcji main
xor %eax,%eax
ret
#################################################################