Instruction Set Description
186
SLAU367P – October 2012 – Revised April 2020
Copyright © 2012–2020, Texas Instruments Incorporated
CPUX
4.6.2.26 JGE
JGE
Jump if greater or equal (signed)
Syntax
JGE label
Operation
If (N .xor. V) = 0: PC + (2 × Offset)
→
PC
If (N .xor. V) = 1: execute following instruction
Description
The negative bit N and the overflow bit V in the SR are tested. If both bits are set or both
are reset, the signed 10-bit word offset contained in the instruction is multiplied by 2, sign
extended, and added to the 20-bit PC. This means a jump in the range -511 to +512
words relative to the PC in full memory range. If only 1 bit is set, the instruction after the
jump is executed.
JGE is used for the comparison of signed operands: also for incorrect results due to
overflow, the decision made by the JGE instruction is correct.
Note that JGE emulates the nonimplemented JP (jump if positive) instruction if used after
the instructions AND, BIT, RRA, SXTX, and TST. These instructions clear the V bit.
Status Bits
Status bits are not affected.
Mode Bits
OSCOFF, CPUOFF, and GIE are not affected.
Example
If byte EDE (lower 64 K) contains positive data, go to Label1. Software can run in the full
memory range.
TST.B
&EDE
; Is EDE positive? V <- 0
JGE
Label1
; Yes, JGE emulates JP
...
; No, 80h <= EDE <= FFh
Example
If the content of R6 is greater than or equal to the memory pointed to by R7, the program
continues a Label5. Signed data. Data and program in full memory range.
CMP
@R7,R6
; Is R6 >= @R7?
JGE
Label5
; Yes, go to Label5
...
; No, continue here
Example
If R5
≥
12345h (signed operands), the program continues at Label2. Program in full
memory range.
CMPA
#12345h,R5
; Is R5 >= 12345h?
JGE
Label2
; Yes, 12344h < R5 <= 7FFFFh
...
; No, 80000h <= R5 < 12345h