J(podmínka) - blízky skok při splnení podmínky

Z Delphi & Pascal (česká wiki)
Přejít na: navigace, hledání
Instrukce
J(podmínka) - blízky skok při splnení podmínky
Varianty
JA - Skok při větším (7 instrukcí)
JAE - Skok při větším nebo rovném (7 instrukcí)
JB - Skok při menším (7 instrukcí)
JBE - Skok při menším nebo rovném (7-9 instrukcí)
JC - Skok při přenosu (7-9 instrukcí)
JCXZ - Skok při CX = 0 (8 instrukcí)
JE - Skok při rovnosti (7 instrukcí)
JG - Skok při větším (7 instrukcí)
JGE - Skok při větším nebo rovném (7 instrukcí)
JL - Skok při menším (7 instrukcí)
JLE - Skok při menším nebo rovném (7 instrukcí)
JNA - Skok při nevětším (7 instrukcí)
JNAE - Skok při nevětším nebo rovném (7 instrukcí)
JNB - Skok při nemenším (7 instrukcí)
JNBE - Skok při nemenším nebo rovném (7 instrukcí)
JNC - Skok při CF = 0 (7 instrukcí)
JNE - Skok při nerovnosti (7 instrukcí)
JNG - Skok při nevětším (7 instrukcí)
JNGE - Skok při nevětším nebo rovném (7 instrukcí)
JNL - Skok při nemenším (7 instrukcí)
JNLE - Skok při nemenším nebo rovném (7 instrukcí)
JNO - Skok nebylo-li přetečení (7 instrukcí)
JNP - Skok nebyla-li parita (7 instrukcí)
JNS - Skok nebylo-li znaménko (7 instrukcí)
JO - Skok při přetečení (7 instrukcí)
JP - Skok při parite (7 instrukcí)
JPE - Skok při sudé parite (7 instrukcí)
JPO - Skok při liché parite (7 instrukcí)
JS - Skok při znaménku (7 instrukcí)
JZ - Skok při nule (7 instrukcí)
Popis
Instrukce J (nasledována podmínkou z právě uvedeného seznamu) predáva řízení operandu specifikovanému v instrukci. Jde o podmíněné "krátke" skoky testujíci příznaky. Testovací operand instrukce musí být v dosahu -128 až +127 byte od umístění instrukce J(podmínka). Toto omezení je podstatné pro assembler který vytváří 1-bytové premístení vztažené ke konci instrukce J(podmínka).


Syntaxe
J(test_condition)


Ovlivňuje příznaky
žádné


Nedefinované příznaky
žádné


Výjimky v privilegovaném módu
Jestliže je offset místa na než má být predáno řízení, mimo hranice segmentu CS, je generována všeobecná výjimka privilegovaného módu.


Poznámka pro 80386
Užíva 32-bitový rozšírený ukazatel instrukce. Premístení je osmibitové, rozšírené do 32 bitů znaménkovým bitem (pokud není jinak upraveno).


Příklad
JA INST_LABEL