%include "rw32-2018.inc" section .data delka_str db "Delka strany: ", 0 obsah_str db " m, obsah pravidelneho sestiuhelniku: ", 0 ukonceni_str db " cm^2", EOL, 0 ; Ukol: vytvorte 'pole' 8b hodnot bez znamenka a inicializujte jej alespon 3-ma prvky, ; dale vytvorte 32b promennou 'pocet' do ktere ulozte pocet prvku pola 'pole' section .text CMAIN: ; nulovani pocitadla cyklu xor ecx, ecx .cyklus: ; prvni cast vypisu na terminal mov al, [ecx + pole] mov esi, delka_str call WriteString call WriteUInt8 ; zaloha ecx, volani funkce push ecx call obsahPravidelnehoSestiuhelniku ; obnova ecx pop ecx ; vypis na vystup mov esi, obsah_str call WriteString call WriteUInt32 mov esi, ukonceni_str call WriteString ; posun na dalsi prvek inc ecx cmp ecx, [pocet] jne .cyklus xor eax, eax ret obsahPravidelnehoSestiuhelniku: ; Ukol: napiste obsah rutiny obsahPravidelnehoSestiuhelniku ; Vstup: al, delka strany v metrech ; Vystup: eax, obsah v cm^2 ; Postup: S_(eax) = 10000 * (3*sqrt(3)/2) * a_(al)^2 ; S_(eax) = 10000 * 13775 * a_(al)^2 / 5302 ; V pripade, ze mate hotovo, zkuste vysledek spravne zaokrouhlit na jednotky ; kod piste PRED navratem 'ret' ret