Question: what is the difference between call and jmp instruction?
Answer: A JMP instruction permanently changes the program counter. A CALL instruction leaves information on the stack so that the original program execution sequence can be resumed. CALL is an instruction that transfers the program control to a sub routine with the intention of coming back to the main program.