J(podmínka) - blízky skok při splnení podmínky: Porovnání verzí

Z Delphi & Pascal (česká wiki)
Skočit na navigaci Skočit na vyhledávání
Řádek 4: Řádek 4:
 
;Varianty:
 
;Varianty:
 
{|
 
{|
| [[JA]]  || Skok při větším            || (7 instrukcí)
+
| [[JA]]  || - Skok při větším            || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JAE]] || Skok při větším nebo rovném || (7 instrukcí)
+
| [[JAE]] || - Skok při větším nebo rovném || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JB]]  || Skok při menším            || (7 instrukcí)
+
| [[JB]]  || - Skok při menším            || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JBE]] || Skok při menším nebo rovném || (7-9 instrukcí)
+
| [[JBE]] || - Skok při menším nebo rovném || (7-9 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JC]]  || Skok při přenosu            || (7-9 instrukcí)
+
| [[JC]]  || - Skok při přenosu            || (7-9 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JCXZ]]|| Skok při [[CX]] = 0        || (8 instrukcí)
+
| [[JCXZ]]|| - Skok při [[CX]] = 0        || (8 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JE]]  || Skok při rovnosti          || (7 instrukcí)
+
| [[JE]]  || - Skok při rovnosti          || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JG]]  || Skok při větším            || (7 instrukcí)
+
| [[JG]]  || - Skok při větším            || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JGE]] || Skok při větším nebo rovném || (7 instrukcí)
+
| [[JGE]] || - Skok při větším nebo rovném || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JL]]  || Skok při menším            || (7 instrukcí)
+
| [[JL]]  || - Skok při menším            || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JLE]] || Skok při menším nebo rovném || (7 instrukcí)
+
| [[JLE]] || - Skok při menším nebo rovném || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JNA]] || Skok při nevětším          || (7 instrukcí)
+
| [[JNA]] || - Skok při nevětším          || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JNAE]]|| Skok při nevětším nebo rovném || (7 instrukcí)
+
| [[JNAE]]|| - Skok při nevětším nebo rovném || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JNB]] || Skok při nemenším          || (7 instrukcí)
+
| [[JNB]] || - Skok při nemenším          || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JNBE]]|| Skok při nemenším nebo rovném || (7 instrukcí)
+
| [[JNBE]]|| - Skok při nemenším nebo rovném || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JNC]] || Skok při [[CF]] = 0        || (7 instrukcí)
+
| [[JNC]] || - Skok při [[CF]] = 0        || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JNE]] || Skok při nerovnosti        || (7 instrukcí)
+
| [[JNE]] || - Skok při nerovnosti        || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JNG]] || Skok při nevětším          || (7 instrukcí)
+
| [[JNG]] || - Skok při nevětším          || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JNGE]]|| Skok při nevětším nebo rovném || (7 instrukcí)
+
| [[JNGE]]|| - Skok při nevětším nebo rovném || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JNL]] || Skok při nemenším          || (7 instrukcí)
+
| [[JNL]] || - Skok při nemenším          || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JNLE]]|| Skok při nemenším nebo rovném || (7 instrukcí)
+
| [[JNLE]]|| - Skok při nemenším nebo rovném || (7 instrukcí)
|--------------------------------------------------------
+
|----------------------------------------------------------
| [[JNO]] || Skok nebylo-li přetečení    || (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í)
 
 
|--------------------------------------------------------
 
|--------------------------------------------------------
 +
| [[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í)
 +
|----------------------------------------------------------
 
|}
 
|}
  

Verze z 3. 2. 2013, 22:56

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 (nasledovana podminkou z prave uvedeneho seznamu) predava rizeni operandu specifikovanemu v instrukci. Jde o podminene "kratke" skoky testujici priznaky. Testovaci operand instrukce musi byt v dosahu -128 az +127 byte od umisteni instrukce J(podminka). Toto omezeni je podstatne pro assembler, ktery vytvari 1-bytove premisteni vztazene ke konci instrukce J(podminka).


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