_DATA segment t dw 10, 8, 18, 5, 20, 23, 17 suma dw 0 _DATA ends assume ds:_DATA assume cs:_TEXT _TEXT segment start: mov ax, _DATA mov ds, ax mov bx, offset t bucla: ; verificam daca mai avem elemente cmp bx, offset suma jae final ; extragem elementul curent si-l adunam la suma mov ax, word ptr [bx] add suma, ax ; incrementam indexul add bx, 2 jmp bucla final: mov ax, 4C00h int 21h _TEXT ends _STACK segment stack db 512 dup(?) _STACK ends end start