; ADD NUMBERS IN MEMORY 00H -> NEXT 00H BYTE, STORE RESULT IN C JMP START START: LXI H,00H ; HL AS MEMORY POINTER MVI C,00H ; CLEAR C MOV B,C ; CLEAR B NEXT: MOV A,M ; SET ACCUMULATOR TO VALUE AT MEMORY ADDRESS CPI 00H ; COMPARE ACCUMULATOR WITH 00H JZ END ; JUMP IF ZERO INX H ; INCREASE POINTER JMP SAVE ; JUMP TO SAVE SAVE: MOV B,A ; STORE ACCUMULATOR IN B MOV A,C ; MOVE C INTO ACCUMULATOR ADD B ; ADD B MOV C,A ; STORE NEW ADDED VALUED IN B MVI A,00H ; CLEAR ACCUMULATOR MOV B,A ; CLEAR B JMP NEXT ; NEXT BYTE END: HLT ; HALT