The main idea is to make not possible for the variables to be executed as a code. Don't forget that from the CPU point of view, the data and the programs are the same. If you make jump to the variables area or if the IP comes to it by execution of the instructions, the CPU will try to execute them, but as long as the variables probably will contains no meaningful instructions some CPU exception will happen and the program will crash or hangs.
Although, jumping over the variables is not the best way to do these things. You can with the same success put all the variables at the end of the program and they will never be executed as well. With the advantage to use one instruction less and making the code more readable avoiding unnecessary jumps:
seg1 segment
org 100h
; code here
mov ah, 4ch
int 21h ; this will never return, but end the program.
; variables here will never be executed.
seg1 ends