Регистр флагов FLAGS влияет на выполнение условных переходов в ассемблере, так как с его помощью хранятся результаты сравнений. 2
В регистре FLAGS есть четыре бита: carry (флаг переноса), overflow (флаг переполнения), sign (флаг знака) и zero (флаг нуля). 1
Некоторые инструкции условного перехода и их условия выполнения в зависимости от флагов:
- jc — выполняет переход к метке, если установлен флаг переноса. 1
- jnc — выполняет переход к метке, если флаг переноса не установлен. 1
- jo — выполняет переход к метке, если установлен флаг переполнения. 1
- jno — выполняет переход к метке, если флаг переполнения не установлен. 1
- js — выполняет переход к метке, если установлен флаг знака. 1
- jns — выполняет переход к метке, если флаг знака не установлен. 1
- jz — выполняет переход к метке, если установлен флаг нуля. 1
- jnz — выполняет переход к метке, если флаг нуля не установлен. 1
Эти инструкции принимают один операнд — метку, к которой выполняется переход. 1