;This program adds up a series of bytes in locations 1000h - 101fh
;It leaves it in 1020h (word);
        mov     cx,     0               ;accumulator
        mov     si,     0               ;index pointer into array
        mov     bh,     0               ;set up for bl -> bx

around: mov     bl,   byte ptr 1000h [si] ;get next byte to add
        add     cx,   bx                ;add byte into total

        add     si,   1                 ;point to next byte in array
        cmp     si,   1fh               ;end of array
        jbe     around
        mov     word ptr 1020h, cx      ;move out sum
        int     20h