;This program adds four words of data and saves the result TITLE PROG2-2 (EXE) PURPOSE: ADDS 4 WORDS OF DATA PAGE 60,132 .MODEL SMALL .STACK 64 ;-------------- .DATA DATA_IN DW 234DH,1DE6H,3BC7H,566AH ORG 10H SUM DW ? ;-------------- .CODE MAIN PROC FAR MOV AX,@DATA MOV DS,AX MOV CX,04 ;set up loop counter CX=4 MOV DI,OFFSET DATA_IN ;set up data pointer DI MOV BX,00 ;initialize BX ADD_LP: ADD BX,[DI] ;add contents pointed at by [DI] to BX INC DI ;increment DI twice INC DI ;to point to next word DEC CX ;decrement loop counter JNZ ADD_LP ;jump if loop counter not zero MOV SI,OFFSET SUM ;load pointer for sum MOV [SI],BX ;store in data segment MOV AH,4CH ;set up return INT 21H ;return to DOS MAIN ENDP END MAIN