
Instruction Set
4-91
JG
Jump If Greater
JG
JNLE
Jump If Not Less or Equal
What It Does
If the previous instruction clears the Zero Flag (ZF), and modifies the Sign Flag (SF) and
the Overflow Flag (OF) so that they are the same, JG and JNLE stop executing the current
sequence of instructions and begin executing a new sequence of instructions; otherwise,
execution continues with the next instruction.
Syntax
Description
JG and JNLE test the flags set by a previous instruction. The terms
greater and less indicate
an integer (signed) comparison. If the given condition is true (ZF=0 and SF=OF), a short
jump is made to the location provided as the operand.
Operation It Performs
Flag Settings After Instruction
Form
Opcode
Description
Clocks
Am186 Am188
JG
rel8
7F
cb
Jump short if greater (ZF=0 and SF=OF)
13,4
13,4
JNLE
rel8
7F
cb
Jump short if not less or equal (ZF=0 and SF=OF)
13,4
13,4
JG
label
To jump if the result of a previous integer
comparison was greater, use JG or its
synonym, JNLE. Both forms perform the
same operation.
JNLE
label
if ((ZF == 0) && (SF == OF))
{
/* extend sign of label */
if (
label < 0)
displacement = 0xFF00 |
label;
else
displacement = 0x00FF &
label;
/* branch to labeled instruction */
IP = IP + displacement;
}
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
Processor Status
Flags Register
reserved
OF DF
IF TF SF ZF
AF
PF
CF
? = undefined; – = unchanged
–
–
–
–
–
– res – res – res –
Summary of Contents for Am186 Series
Page 1: ...Am186 and Am188 Family Instruction Set Manual February 1997...
Page 10: ...Table of Contents x...
Page 18: ...Programming 1 8...
Page 40: ...Instruction Set Listing 3 14...