Should probably decide if using dword (4 bytes) or word (2 bytes), on a 386 it's cheaper to do the former.
.386
.model flat,c
.stack 100h
includelib msvcrt
.data
printf proto arg1:ptr byte, printlist:vararg
sum dword ?
data dword 3435h,2444h,2439h,2332h,0
.code
public main
main proc
mov edi,offset data ;setup pointer
mov ecx,4 ;loop counter
mov ebx,0
add_up:add ebx,[edi] ;add contents
add edi,4
dec ecx
jnz add_up
mov esi,offset sum
mov [esi],ebx
stoploop:nop
ret
main endp
end main
The following C would be fine for printing 32-bit values
printf("%u\n", sum);
Something equivalent to
push ebx
push offset format
call printf
add esp,8
..
format db "%u",0Dh, 0Ah, 0