プログラムは基本的に上から下へ順番に流れていくのですが、違う場所の命令を実行したい事もあります。その中でよくあるのが「違う場所へジャンプ」と「違う場所の処理をしてからまた戻ってくる」の2つです。 前者は、買い物の途中で「やっぱりあの店行くのやめて、こっちの店で買ってきてよ」と頼まれるような感じで、後者は「お願いしたものは予定通りで、ついでにあの店にも寄って買ってきてよ」と頼まれるような感じです。 前者の、予定変更して行ったっきり戻ってこないのが「GOTO」命令で、後者の追加で別のところに行ってまた戻ってくるのが「GOSUB」命令です。 例えば勝ち負けやゲームオーバーなど、その後の流れを変えるときはGOTOを使って、主人公を表示し直すなど何度も使う処理はいろんな所からGOSUBで呼び出す、みたいな使い分けをします。