Команды перехода модифицируют указатель команды IP, и, возможно, регистр сегмента кодов CS. Эти регистры показывают, какая следующая команда должна быть выполнена. Команда перехода является специальным случаем пересылки MOV данных в регистр или пару регистров; и некоторые ЭВМ действительно выполняют команду перехода именно таким способом. Однако способы загрузки пары регистров CS:IP в микропроцессоре 8088 во многом отличаются от способов, используемых для других регистров.
Прежде всего мы должны ввести некоторые определения. Если команда перехода изменяет только регистр IP, это близкий переход (NEAR-переход), так как переход происходит внутри сегмента. Если переход изменяет регистр CS, это далекий FAR-переход.Атрибуты NEAR и FAR используются при работе ассемблера. Любая программная метка в программе на языке ассемблера имеет атрибут либо NEAR, либо FAR, так же, как данные имеют атрибуты BYTE или WORD. В некоторых примерах этой главы имеются процедуры, которые используют атрибут NEAR в операторе PROC. Это означает, что метка, связанная с оператором PROC (имя процедуры) имеет атрибут NEAR. Ассемблер использует эту информацию для того, чтобы определить, какой тип команды перехода или вызова породить при переходе к этой метке. Поскольку большинство процедур - подпрограммы, атрибут NEAR или FAR оператора PROC также определяет тип порождаемой команды возврата. Вызов FAR-процедуры сохраняет значения как регистра CS, так и регистра IP, тогда как вызов NEAR-процедуры оставляет в стеке только значение регистра IP. Команда возврата должна учитывать, какой тип вызова был сделан, чтобы подпрограмма могла вернуться к правильному месту.