If we think of a program as a sequence of instructions, then the order the instructions are executed is sequential. Usually. Some instructions have the ability to alter the sequence of execution. Instead of the following instruction, the next instruction executed might be the previous instruction!
Instructions that alter the sequence of execution fall into three categories: