This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
laboratoare:laborator-05 [2015/11/11 07:55] razvan.deaconescu [Tutorial: Suma elementelor într-un vector reprezentate pe un octet] |
laboratoare:laborator-05 [2015/11/11 08:00] razvan.deaconescu [Numărul de numere pare și impare într-un vector] |
||
---|---|---|---|
Line 138: | Line 138: | ||
Nu definiți un număr foarte mare, pentru a putea fi vizualizat rezultatul înmulțirii în registrul ''eax''. | Nu definiți un număr foarte mare, pentru a putea fi vizualizat rezultatul înmulțirii în registrul ''eax''. | ||
- | ==== Tutorial: Suma elementelor într-un vector reprezentate pe un octet ==== | + | ==== Tutorial: Suma elementelor dintr-un vector reprezentate pe un octet ==== |
În programul ''sum_array.asm'' din [[http://elf.cs.pub.ro/asm/res/laboratoare/lab-05-tasks.zip|arhiva laboratorului]] este calculată suma elementelor unui vector (//array//) de octeți (//bytes//, reprezentare pe 8 biți). | În programul ''sum_array.asm'' din [[http://elf.cs.pub.ro/asm/res/laboratoare/lab-05-tasks.zip|arhiva laboratorului]] este calculată suma elementelor unui vector (//array//) de octeți (//bytes//, reprezentare pe 8 biți). | ||
Line 149: | Line 149: | ||
- | ==== Suma elementelor într-un vector ==== | + | ==== Suma elementelor dintr-un vector ==== |
- | TODO | + | În zona marcată cu ''TODO'' din fișierul ''sum_array.asm'' completați codul pentru a realiza suma vectorilor cu elemente de tip word (16 biți) și de tip dword (32 de biți); este vorba de vectorii ''word_array'' și ''dword_array''. |
+ | |||
+ | <note tip> | ||
+ | Când veți calcula adresa unui element din array, veți folosi construcție de forma:<code> | ||
+ | base + size * index | ||
+ | </code> | ||
+ | În construcția de mai sus: | ||
+ | * ''base'' este adresa vectorului (adică ''word_array'' sau ''dword_array'') | ||
+ | * ''size'' este lungimea elementului vectorului (adică ''2'' pentru vector de word (16 biți, 2 octeți) și ''4'' pentru vector de dword (32 de biți, 4 octeți) | ||
+ | * ''index'' este indexul curent în cadrul vectorului | ||
+ | |||
+ | </note> | ||
- | ==== Suma pătratelor elementelor într-un vector ==== | + | ==== Suma pătratelor elementelor dintr-un vector ==== |
TODO | TODO | ||
- | ==== Numărul de numere negative și pozitive într-un vector ==== | + | ==== Numărul de numere negative și pozitive dintr-un vector ==== |
TODO | TODO | ||
- | ==== Numărul de numere pare și impare într-un vector ==== | + | ==== Numărul de numere pare și impare dintr-un vector ==== |
TODO | TODO |