- •Лабораторна робота №5. Використання команд умовного переходу
- •2. Короткі теоретичні відомості
- •2.1 Ja Перехід якщо вище
- •2.2 Jae Перехід якщо вище або дорівнює
- •2.3 Jb Перехід якщо нижче
- •2.4 Jbe Перехід якщо нижче або дорівнює
- •2.5 Jc Перехід якщо перенос
- •2.7 Je Перехід якщо дорівнює
- •2.8 Jg Перехід якщо більше
- •2.9 Jge Перехід якщо більше або дорівнює
- •2.10 Jl Перехід якщо менше
- •2.11 Jle Перехід якщо менше або дорівнює
- •2.17 Jne Перехід якщо не дорівнює
- •2.23 Jnp Перехід якщо непарне
- •2.24 Jns Перехід якщо додатній результат
- •2.25 Jnz Перехід якщо не нуль
- •2.26 Jo Перехід якщо є переповнення
- •2.27 Jp Перехід якщо парне
- •2.28 Jpe Перехід якщо парне
- •2.29 Jpo Перехід якщо непарне
- •2.30 Js Перехід якщо негативний результат
- •2.31 Jz Перехід якщо нуль
- •3. Порядок виконання роботи.
- •4. Контрольні запитання
- •5. Література.
2.5 Jc Перехід якщо перенос
Ознаки не міняються .
Команда: JC short-label .
Умова переходу: Jump if CF = 1 .
Команда JC передає керування по мітці short-label, якщо
ознака переносу CF установлена (тобто =1). Ціль переходу повинна
лежати в межах від -128 до 127 байтів від наступної команди.
Примітки:
Команди JB (перехід якщо нижче), JC і JNAE (перехід якщо не
вище і не дорівнює) усі є синонімами однієї і тієї ж команди.
Користуйтеся командою JNC, перехід якщо немає
переносу, для переходу в тому випадку, коли ознака переносу CF скинута (тобто=0).
2.6 JCXZ Перехід якщо CX = 0
Ознаки не міняються .
Команда: JCXZ short-label .
Умова переходу: Jump if CX = 0 .
Команда JCXZ передає керування по мітці short-label, якщо
регістр CX дорівнює 0. Ціль переходу повинна лежати в межах
від -128 до 127 байтів від наступної команди.
Примітка: Ця команда звичайно застосовується на початку
циклу, щоб пропустити тіло циклу, коли перемінна лічильника
(CX) дорівнює нулеві.
2.7 Je Перехід якщо дорівнює
Ознаки не міняються .
Команда: JE short-label.
Умова переходу: Jump if ZF = 1 .
Команда JE використовується після команд CMP і SUB і передає
керування по мітці short-label, якщо перший операнд був рівний
другому. Ціль переходу повинна лежати в межах від -128 до 127
байтів від наступної команди.
Примітки:
Команда JZ, перехід якщо нуль, - це та ж команда, що і JE.
2.8 Jg Перехід якщо більше
Ознаки не міняються.
Команда: JG short-label .
Умова переходу: Jump if ZF = 0 and SF = OF .
Команда JG використовується після команд CMP або SUB і передає
керування по мітці short-label, якщо перший операнд був
більше, ніж другий. (Два операнди розглядаються як числа зі
знаком.) Ціль переходу повинна лежати в межах від -128 до 127
байтів від наступної команди.
Примітки:
Команда JNLE, перехід якщо не менше і не дорівнює, - це та
же команда, що і JG.
Команду JA, перехід якщо вище, варто використовувати при
порівнянні чисел без знака.
Команду JG, перехід якщо більше, варто використовувати при
порівнянні чисел зі знаком.
2.9 Jge Перехід якщо більше або дорівнює
Ознаки не міняються .
Команда: JGE short-label .
Умова переходу: Jump if SF = OF .
Команда JGE використовується після команд CMP або SUB і пере-
дає керування по мітці short-label, якщо перший операнд був
більше або рівний другому. (Два операнди розглядаються як
числа зі знаком.) Ціль переходу повинна лежати в межах від
-128 до 127 байтів від наступної команди.
Примітки:
Команда JNL, перехід якщо не менше, - це та ж команда,
що і JGE.
Команду JAE, перехід якщо вище або дорівнює, слід
використовувати при порівнянні чисел без знака.
Команду JGE, перехід якщо більше або дорівнює, випливає
використовувати при порівнянні чисел зі знаком.