Why is that instruction 109 appears to be executed even if it doesn't actually reach by the instruction pointer when run. As far as I know(C++ background), the processor process instructions 1 at a time and in an orderly fashion. Address 100,102,105, and 107 are executed first, and so how come INT 21 can display the contents of memory location 109 prior to being the next line (not yet declared)?
(suppose we enter these instructions on debug)
100 MOV AH,09
102 Dx,109
105 INT 21
107 JMP 100
109 DB 'Hello World', '$' <Enter> <Enter>