Micro 86 always starts at 1000h Example from handout .asm file: JMP Start ;1000-1002 JMP's operand is 2B offset from next instruction's address DW 1 ;1003 DW (define word[2B]) but can't be named in Micro86 DW 1 DW 1 DW 4 Start: MOV BX,1003 ;address of first DW MOV DX,1009 ;address of last DW SUB AX,AX ;AX=0 Loop: ADD AX,[BX] ;AX=AX+word BX points to ADD BX,2 ;increment BX pointer CMP DX,BX ; JNS Loop ;loop while BX<=DX. conditional jump operand is 1B offset HLT .lst file Assembler listing MICRO-86 KIT v1.2, Sep 17, 2004 ,7:14 PM -------------------------------------------------- ADDR CODE LABEL MNEMONICS -------------------------------------------------- 1000: E9 08 00 JMP START 1003: 01 00 1005: 01 00 1007: 01 00 1009: 04 00 100B: BB 03 10 START MOV BX,1003 100E: BA 09 10 MOV DX,1009 1011: 2B C0 SUB AX,AX 1013: 03 07 LOOP ADD AX,[BX] 1015: 83 C3 02 ADD BX,2 1018: 3B D3 CMP DX,BX 101A: 79 F7 JNS LOOP F7 is negative number 101C: F4 HLT 101D: